明显的尝试是:
Regex.Replace(input, @".$", "X", RegexOptions.Singleline);
但这并不总是有效。考虑字符串\r\n\r\n
- 上面会产生令人惊讶的\r\nXX
结果。人们可能期望阅读MSDN(在 Multiline 下)$
应该在整个字符串的末尾匹配,但显然$
实际上意味着“匹配于字符串的结尾或字符串“。
\n
匹配任意字符串的最后一个字符的正确方法是什么?
答案 0 :(得分:8)
.NET支持\z
令牌,该令牌始终与字符串的结尾匹配:
Regex.Replace(input, @".\z", "X", RegexOptions.Singleline);