相关疑难解决方法(0)

正则表达式从C#剥离行注释

我正在编写一个例程来从一些C#代码中删除块行注释.我查看了网站上的其他示例,但没有找到我正在寻找的确切答案.

我可以使用这个正则表达式与RegexOptions.Singleline完全匹配块注释(/*comment*/):

(/\*[\w\W]*\*/)

我可以使用RegexOptions.Multiline的正则表达式完整地匹配行注释(//注释):

(//((?!\*/).)*)(?!\*/)[^\r\n]

注意:我正在使用[^\r\n]而不是$因为$包括\r在比赛中.

然而,这并不十分工作,我希望它的方式.

这是我正在匹配的测试代码:

// remove whole line comments
bool broken = false; // remove partial line comments
if (broken == true)
{
    return "BROKEN";
}
/* remove block comments
else
{
    return "FIXED";
} // do not remove nested comments */ bool working = !broken;
return "NO COMMENT";
Run Code Online (Sandbox Code Playgroud)

块表达式匹配

/* remove block comments
else
{
    return "FIXED";
} // do not …
Run Code Online (Sandbox Code Playgroud)

.net c# regex

40
推荐指数
3
解决办法
4万
查看次数

标签 统计

.net ×1

c# ×1

regex ×1