在c#正则表达式中如何查找"\r""\n"这样本身就有转义意义的字符?

在一个英文文本文件中有msgid "Function\n%s%d\r"这样包含变量"%s" "%d"还有"\r" "\n"的字符串,现在要将英文翻译成其它语言如中文,为了保证翻译完成的中文中变量和"\r" "\n"相比英文不丢失,我写了一段代码可以准确查找出%s %d等变量,但是由于\r \n这类字符本身就有转义的意义,不知道用C#正则表达式如何进行匹配:
如下代码我想查找字符串中的\r但每次返回结果都是False即未查找到:
string pattern=@"\r";
string text=@"msgid Function%s%d\r";
Match ms=Regex.Match(text,pattern);
if (ms.Success)
{
MessageBox.Show("True");
}
else
{
MessageBox.Show("False");
}
哪位高手能帮忙指点一下,万分感谢!

第1个回答  2010-10-16
\\r和\\n
注意两条\本回答被提问者采纳

在c#正则表达式中如何查找"\\r""\\n"这样本身就有转义意义的字符?
\\\\r和\\\\n 注意两条\\

C#正则表达式的疑惑,关于反个"反斜杠".
|Ms\\.?但c#编程中,正则表达式是作为字符串形式出现的,而c#中字符串的反斜杠有特殊意义,就是转义字符,但在 string pattern = "(Mr\\.?|Mrs\\.?|Miss |Ms\\.?)";中 \\.不是一个已知的可转义的字符,所以编译不通过,这时需要使用双反斜杠 \\\\ 使原本的反斜杠转义成真正意义上的反斜杠 string...

正则表达式将查找到的字符串全文替换
参数说明 input:要修改的字符串 replacement:替换字符串 count:进行替换的最大次数 startat:输入字符串开始搜索的位置 evaluator:在每一步计算替换的MatchEvaluator。(MatchEvaluator的使用举例)就是一个函数代理,参数为Match类型,匹配的数据。同样的内容只替换一次举例:Regex Reg = new Regex('oldWor...

C#正则表达式的疑惑,关于反个"反斜杠".
正则表达式是这样写没错Mr\\.? |Mrs\\.? |Miss |Ms\\.?但c#编程中,正则表达式是作为字符串形式出现的,而c#中字符串的反斜杠有特殊意义,就是转义字符,但在 string pattern = "(Mr\\.? |Mrs\\.? |Miss |Ms\\.? )"; 中 \\. 不是一个已知的可转义的字符,所以编译不通过,这时需要使用双...

求C#中需要转义的特殊符号(完全)列表,
\\cC 与 ASCII 控制字符匹配;例如,\\cC 为 Ctrl-C。\ 使用十六进制表示形式(恰好四位)与 Unicode 字符匹配。\\ 在后面带有不识别为转义符的字符时,与该字符匹配。例如,\\* 与 \\x2A 相同。注意 转义字符 \\b 是一个特例。在正则表达式中,\\b 表示单词边界(\\w 和 \\W 之间的字符);...

正则表达式中,在括号内的特殊字符哪些需要转义
\\ 将下一个字符标记为或特殊字符、或原义字符、或向后引用、或八进制转义符。例如, ‘n' 匹配字符 ‘n'。'\\n' 匹配换行符。序列 ‘\\\\' 匹配 “\\”,而 ‘\\(' 则匹配 “(”。^匹配输入字符串的开始位置,除非在方括号表达式中使用,此时它表示不接受该字符集合。要匹配 ^ 字符本身,请...

C# 正则表达式 只保留 数字 和“\\r\\n”(也就是换行)。在线急等!_百度...
;string pattern = @"[\\d\\r\\n]+";Regex reg = new Regex(pattern, RegexOptions.IgnoreCase);MatchCollection matches = reg.Matches(s);Console.WriteLine(matches[0].ToString());Console.ReadLine();这样的匹配后输出的时候回车和换行符会被展示成回车和换行 结果是 12 12345 ...

C# 正则表达式取两个关键词之间的内容
public void ShowStructure(){ \/\/要匹配的字符串 string text = "<!---go--->qwerty\\r\\nasddff\\r\\nasdfff\\r\\nadffgg\\r\\nafhguj\\r\\nujikuy\\r\\n……\\r\\nasdsqsdw<!---over--->"; \/\/正则表达式 string pattern = @"<!---go--->((?:(?!<!---over--->)[...

python正则表达式中re.compile('\\\\\\n')匹配的为什么是换行符?
你这个\\\\\\n等同于\\n,\\n是换行符的意思,\\后面如果不是什么t,r,n之类的,表示他的\\后面的那个东西是没有意义的 \\\\,第一个反斜杠表示转义,意思是第二反斜杠不再视为一个转义字符。在python看来\\\\字符,实际上只是一个\\反斜杠。

正则表达式 反斜杠的匹配 2018-11-30
但当你在字符串前面加一个 r ,表示初始字符串,此时解释器将不对字符串里面的特殊字符进行转义,最外层双引号里面是什么内容,即为什么样的内容,所见即所得 在正则表达式中会使用一些通配符,比如 \\w 表示匹配字母,数字或者下划线; \\s 表示空白字符; \\d 匹配数字 因此,若要实现正则转义,首先...

相似回答