我一直在尝试使用正则表达式匹配HTML文件中的注释,并通过C#.net(VS2010)解决方案完全删除它们。 这是评论的样子,
/*This flexibility is not available with most other programming languages. E.g. in Java,
the position for \G is remembered by the Matcher object.
The Matcher is strictly associated with a single regular expression and a single subject
string.*/
我确实尝试了/\*.+\*/
,
str = File.ReadAllText("Test.html");<br />
str = Regex.Replace(str, "/\*.+\*/", "", RegexOptions.Singleline);<br />
File.WriteAllText("Test.html", str);
但他们没有为我工作。我在论坛上听了一些答案,但仍然没有运气。
我很感激任何帮助:)
...谢谢
答案 0 :(得分:1)
你必须在字符串文字中添加一个额外的转义层:
str = Regex.Replace(str, "/\*.+\*/", "", RegexOptions.Singleline);
生成/*.+*/
作为模式,因为\
是c#字符串文字的转义元符号。你需要使用以下一个变体来指定它(@
阻止转义序列的处理,\\
应该是不言自明的......):
str = Regex.Replace(str, @"/\*.+\*/", "", RegexOptions.Singleline);
或
str = Regex.Replace(str, "/\\*.+\\*/", "", RegexOptions.Singleline);
答案 1 :(得分:0)
要查找/*comments*/
,请尝试使用此正则表达式:
/\/\*.+?\*\//ims