【发布时间】:2019-07-30 18:46:41
【问题描述】:
我正在解析用户将输入到应用程序中的文本。我需要能够查看用户的正面和负面断言。
例如,如果我的正则表达式是
"(did|will)(?<!\bnot\W+)\s+show\s+dog"
这些示例与预期不匹配:
did not show dog
did not show
not show dog
这符合预期:
did show dog
这个不匹配,但应该:
show dog
我希望能够将第一个捕获组设为可选,例如使用 ? (did|use) 的限定词?但是,这样做时,它会变成可变长度并中断。
在第一个捕获组是可选的情况下,有哪些选项可以解析上面的示例文本?
我正在使用 .Net 正则表达式引擎。我只能传入正则表达式来确定匹配项。除了正则表达式文本之外,我无法访问任何其他 .Net 参数。
【问题讨论】:
标签: .net regex regex-lookarounds