1
这个正则表达式在线regex testers工作,但是当我尝试这段代码正则表达式不匹配。正则表达式匹配在线,但不是在C#代码
Regex regex = new Regex(@"^\.lnr-(.*)\:before \{$", RegexOptions.Compiled | RegexOptions.Multiline);
string css = System.IO.File.ReadAllText(Server.MapPath("/linearicons-free.css"));
foreach (Match match in regex.Matches(css))
{
//doing sth
}
我错过了什么?
请发表[MCVE]包括字符串,这是正则表达式针对你希望它成功测试,但它失败。 –
看起来'$'匹配'\ n'的开头,但由于该文件同时包含'\ r \ n',所以您需要在模式中明确提到这一点。试试这种模式:'@“^ \。lnr - (。*)\:在\ {\ r $”'或'@“^ \之前:\ n。 - (。*)\:\ {\ s?$” 。这似乎记录下[正则表达式中的锚](https://msdn.microsoft.com/en-us/library/h5181w5w(v = vs.110).aspx)。 –
字符串输入是在线正则表达式演示链接。但也可以从http://demos.themecycle.com/eduhtml/edu/css/linearicons-free.css达到 –