Skip to main content
 首页 » 编程设计

c#之正则表达式匹配错误的模式

2024年02月01日27wuhuacong

我正在尝试使用正则表达式从 Word 文档中拉出文本向前看并在这个答案中向后看:

Regular Expression to find a string included between two characters while EXCLUDING the delimiters

我必须使用的分隔符是

开始:RQ

结束:END-RQ

我添加了以下 (powershell) 代码:

$regex = [regex] '(?<=RQ)(.*?)(?=END-RQ)'  
 
$matches = $regex.Matches($concat)  

问题是匹配从 END-RQ 中获取 RQ 作为下一个模式的开始。谁能告诉我如何消除它(例如强制正则表达式完全匹配 RQ 和 END-RQ)?将匹配模式用引号括起来似乎不起作用,即使引号被转义也是如此。

请您参考如下方法:

试试这个:

$regex = [regex] '(?<=(?<!END-)RQ)(.*?)(?=END-RQ)'