是否有可能找到整个解决方案中的代码行数?我听说过MZ-Tools,但是是否有一个开源的工具?


当前回答

同意Ali Parr的观点。WndTab Line Counter插件就是这样一个工具。 http://www.codeproject.com/KB/macros/linecount.aspx

从下载网站上搜索一些相关的工具也是一个好主意。 http://www.cnet.com/1770-5_1-0.html?query=code+counter&tag=srch

其他回答

找到了这个技巧: LOC与VS查找和替换

不是一个插件,但如果这是你正在寻找的。

下面是Visual Studio 2012/2013/2015的更新,供那些想要做“查找”选项的人使用(我认为这是最简单的):这个RegEx将找到所有非空行,并排除一些内容,以给出最准确的结果。

在“查找”框中输入以下正则表达式。请确保选择“使用正则表达式”选项。根据您的需要,将搜索选项更改为“当前项目”或“整个解决方案”。现在选择“查找全部”。在“查找结果”窗口的底部,您将看到“匹配行”,这是代码的行数。


^(?!(\s*\*))(?!(\s*\-\-\>))(?!(\s*\<\!\-\-))(?!(\s*\n))(?!(\s*\*\/))(?!(\s*\/\*))(?!(\s*\/\/\/))(?!(\s*\/\/))(?!(\s*\}))(?!(\s*\{))(?!(\s(using))).*$

该RegEx不包括以下项:


评论

// This is a comment

多行注释(假设每一行都正确地注释了,每行前面都有一个*)

/* I am a
* multi-line
* comment */

XML智能感知

/// <summary>
/// I'm a class description for Intellisense
/// </summary>

HTML注释:

<!-- I am a HTML Comment -->

使用语句:

using System;
using System.Web;

左大括号:

{

右大括号:

}

注意:括号之间的任何内容都将包含在搜索中,但在这个例子中,只有4行代码会被计算在内,而不是实际的18行非空行:

        public class Test
        {
            /// <summary>
            /// Do Stuff
            /// </summary>
            public Test()
            {
                TestMe();
            }
            public void TestMe()
            {
                //Do Stuff Here
                /* And
                 * Do
                 * Stuff
                 * Here */
            }
        }

我创建这个给我一个更准确的LOC计数比以前的一些选项,并认为我将分享。老板们喜欢LOC计数,所以我不得不忍受一段时间。我希望其他人能发现这是有用的,如果你有任何问题或需要帮助,请告诉我。

我用Ctrl+Shift+F。接下来,在搜索框中输入\n并启用正则表达式框。然后在查找结果中,屏幕的末尾是搜索的文件数和找到的代码行数。

你可以使用[^\n\s]\r\n跳过空白行和空格行(在评论中归功于Zach)。

您可以使用Visual Studio Code Metrics PowerTool 10.0。它是一个命令行实用程序,为您计算托管代码(包括代码行)上的一些指标。你可以获得一个VS 2010插件,它可以将工具带入Visual Studio,并使它像选择菜单项并单击“Analyze Solution”一样快速。

Visual Studio有内置的代码度量,包括代码行:

分析→计算代码度量