代码之家  ›  专栏  ›  技术社区  ›  Andy

C#中的正则表达式-无法识别的转义序列

  •  0
  • Andy  · 技术社区  · 8 年前

    我完全明白了如何摆脱反斜杠,这就是为什么这让我陷入了一个循环: Regex

    我什么都试过了没有用 @ 并手动退出后斜杠,请使用 @ 然后逃跑。。。似乎什么都没用。我错过了什么?我做错了什么?

    我正在使用。NET Core 2.0。

    代码如下:

            var path = "this is a test/{lcc_root_whatever}/string done.";
            if (Regex.IsMatch(path, @"\Q/{lcc_root_\E[[:word:]]+\Q}/\E"))
            {
    
            }
    
    1 回复  |  直到 8 年前
        1
  •  0
  •   Wiktor Stribiżew    8 年前

    你甚至不需要逃避任何事情,移除 \Q \E (与.NET regex不兼容)。你仍然需要改变 [[:word:]] \w

    使用

    if (Regex.IsMatch(path, @"/{lcc_root_\w+}/"))