c# - Regex.Match 不适用于查找其他文本 C# 中包含的字符串

标签 c# regex string macros replace

我使用以下 C# Regex 调用来查找文本文件中某些宏的所有实例:

MatchCollection matches = Regex.Matches(txt, @"/{macro:(.*?)}/");

但每次都没有返回任何匹配项。 txt 字符串看起来像这样:

Hi, my name is {macro:name}

对于为什么这不起作用有什么快速观察吗?

最佳答案

尝试转义 {}。这些是正则表达式中的特殊字符,用于表示特定的重复次数。所以试试这个:

@"\{macro:(.*?)\}"

关于c# - Regex.Match 不适用于查找其他文本 C# 中包含的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12716768/

相关文章:

c - 在 C 中将字符串存储到 Char 数组中 & 段错误

Ruby 将字符串转换为文件

Java 分割字符串

c# - .NET Core 中的 OverrideAuthorization 属性

c# - 帮助从控制台应用程序呈现 ASP.NET MVC View

c# - 正式的概念分析工具

javascript - 如何匹配 "two or more words"

c# - .Net Core 2.0 未找到 View 'Index'

python - 如何用正则表达式同时搜索两个可能的引号?

Java字符串上的多个正则表达式