在大字符串中查找令牌

Pau*_*aul 2 c# regex

嗨,我需要找到一个大字符串中的所有匹配项,我发现了这个问题

检测字符串中的特定标记.C#

这看起来很完美!唯一的问题是没有用.这个问题和我的问题之间的区别在于,不是使用#\ w +#而是需要使用[[\ w +]].这是我的代码(某人是我的大字符串):

        Regex reg = new Regex(@"[[\w+]]");
        foreach (Match m in reg.Matches(sb.ToString()))
        {
            RenderHtmlRecursive(helper, sb, path, m.Value);
        }
Run Code Online (Sandbox Code Playgroud)

当我运行这个我得到1匹配:)但值是(m.Value):"t]"

sb是(现在的小文字):卡片[[RegisterText]]

有任何想法吗?

mel*_*wil 5

[并且]是正则表达式中使用的特殊字符,如果您希望匹配该字符,则需要对其进行转义.

只需将其更改为以下内容即可

Regex reg = new Regex(@"\[\[\w+\]\]");
Run Code Online (Sandbox Code Playgroud)