C#正则表达式与字符串中的某些单词不匹配
我已经试了几个小时来解决这个问题。假设有一根绳子C#正则表达式与字符串中的某些单词不匹配,c#,regex,regex-lookarounds,C#,Regex,Regex Lookarounds,我已经试了几个小时来解决这个问题。假设有一根绳子 "hello Exclude1 4:32 test test Exclude2 5:23 hello 2:19 some more text 42:3 more text" 我正在尝试创建一个C#regx,它将只匹配2:19和42:3 但是忽略Exclude1 4:32和Exclude2 5:23 i、 如果前面有Exclude1或Exclude2,则e不匹配4:32或n:nn。 谢谢您可以使用忽略由其他表达式开头的表达式: (?<!E
"hello Exclude1 4:32 test test Exclude2 5:23 hello 2:19 some more text 42:3 more text"
我正在尝试创建一个C#regx,它将只匹配2:19
和42:3
但是忽略Exclude1 4:32
和Exclude2 5:23
i、 如果前面有Exclude1或Exclude2,则e不匹配4:32或n:nn。
谢谢您可以使用忽略由其他表达式开头的表达式:
(?<!Exclude1 )(?<!Exclude2 )\d+:\d+
(?
这将与排除1
或排除2
之前未立即出现的###:##
匹配
演示:|(?您是否尝试过以下方法:
(?您需要为应该匹配和不应该匹配的内容提供一个规则。是否要查找所有\d+:\d+前面没有Exclude\d+?@Rohit I被困在string pattern=@)(?感谢@mellamokb的开箱即用solution@mellamokb请看一看。这和排他性2 54:3的4:3匹配。虽然我把正则表达式改为(?很好的回答。如果Exclude
表达式和数字开头之间始终只有一个空格,那么您的解决方案可能是最简单的。感谢Kode Slacker解释这个概念,感谢willOEM提供的解决方案。这非常适合作为我发布的问题的解决方案和对我知识的补充。但是ude1或Exclude2我过去常常把问题简单化,实际上它们来自一组不同的单词,我试图排除它们。
(?<!a)b for example matches b which is not preceded by a, you can
easily adapt it to your needs.