.net - 如何使用 C# 正则表达式匹配任意字符串中的最后一个字符?

标签 .net regex

明显的尝试是:

Regex.Replace(input, @".$", "X", RegexOptions.Singleline);

但这并不总是有效。考虑字符串 \r\n\r\n - 上面产生了令人惊讶的结果 \r\nXX。人们可能希望阅读 MSDN (在 Multiline 下)$ 应该匹配整个字符串的末尾,但显然 $ 实际上意味着“在字符串末尾匹配或在字符串结尾之前的 \n 处。

匹配任意字符串最后一个字符的正确方法是什么?

最佳答案

.NET 支持 \z 标记,它始终匹配字符串的末尾:

Regex.Replace(input, @".\z", "X", RegexOptions.Singleline);

关于.net - 如何使用 C# 正则表达式匹配任意字符串中的最后一个字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1753312/

相关文章:

c# - 在 WPF 应用程序中添加和执行小型 .net "scripts"

c# - 为什么一个程序集必须被引用两次?

python - 使用 BS4 从网页中提取多个不带 'a' 或 'href' 标签的 URL

c# - 查找未转义字符时使用 Regex Replace

regex - 正则表达式 - 如何翻译它?

c# - 是否可以将像 C# struct 这样的联合序列化为 XML?

c# - 比 xsd 生成的类更快的 XML 文件读取

.net - 简单的 T4 模板在 Visual Studio 2010 中不起作用,但在 MonoDevelop 中起作用吗?

正则表达式:赛前/赛后环视

javascript - Javascript 中的模式匹配