【发布时间】:2013-05-09 02:48:35
【问题描述】:
我有一个 c# 函数,可以在输入侧查找文本模式并进行一些处理。 (我使用的是3.5版本的.net框架)
public void func(string s)
{
Regex r = new Regex("^\s*Pattern\s*$", RegexOptions.Multiline | RegexOptions.ExplicitCapture );
Match m = r.Match(s);
//Do something with m
}
函数的使用可能如下所示
string s = "Pattern \n Pattern \n non-Pattern";
func(s);
但是,我发现有时我的输入看起来更像这样
string s = "Pattern \r Pattern \r non-Pattern"
func(s);
而且它没有被匹配。有没有办法让\r 在正则表达式中被视为\n?我想我总是可以用\ns 替换所有\rs,但我希望如果我能让正则表达式一次完成所有操作,我可以尽量减少操作。
【问题讨论】: