<>是否需要在C#正则表达式中转义?由于命名组以及this regex cheat sheet在元字符部分列出了它们,因此我不确定。

html = Regex.Replace(html, "(<body.*?>)", replacement);


要么

html = Regex.Replace(html, "(\<body.*?\>)", replacement);

最佳答案

永远不需要在regexen中转义<>。它们具有特殊含义的唯一上下文是<是否在(?之后。而且由于在(?转义<之后不允许直接使用常规字符,因此没有任何意义(即(?\<blabla\>)格式错误)。

如果要匹配文字序列?<bla>,则需要转义?,而不是<,在所有其他情况下,<>没有特殊含义。

关于c# - 在C#正则表达式中是否逃脱了大于需求的需求?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17548664/

10-10 14:08