Regex.Replace删除“ \ r \ n”中的“ \ r”字符

最大限度

这是一个简单的例子

string text = "parameter=120\r\n";
int newValue = 250;

text = Regex.Replace(text, @"(?<=parameter\s*=).*", newValue.ToString());

text"parameter=250\n"在更换后。Replace()方法删除“ \ r”。默认情况下,它是否使用unix风格的换行符?添加\b到我的正则表达式(?<=parameter\s*=).*\b可以解决此问题,但是我想应该有一种更好的方法来解析Windows样式的换行符。

阿玛丹

看一下这个答案简而言之,.\n几乎所有正则表达式实现句点()都与每个字符匹配尤其与Replace无关,您告诉它删除了任意数量的.,这也会很困难\r

现在无法测试,但是您可以将其重写(?<=parameter\s*=)[^\r\n]*以明确指出您要禁止使用的字符。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章