gpt4 book ai didi

java - 正则表达式适合所有不以已知后缀列表结尾的字符串(不是字符,而是单词)

转载 作者:行者123 更新时间:2023-11-30 02:10:27 24 4
gpt4 key购买 nike

我需要能够构建一个捕获所有可能模式的正则表达式,除了以 bif 结尾的字符串或dt

我的字符串始终以单词开头,并在结束后缀之前有一个下划线。
如果我的后缀黑名单中没有 dt,我可能会执行以下操作:
\w+_[^f|b|i]+ 或者 (.*)_[^f|b|i]

但是 [^x|y|z] 格式仅捕获单个字符,我无法将其与字符序列组合。

如有任何帮助,我们将不胜感激,

谢谢。

最佳答案

如果您要匹配的内容始终以单词字符开头,并且在结束后缀之前包含下划线,您可能会匹配一个或多个单词字符 \w+ ,匹配下划线,然后匹配一个或多个单词字符 \w+

然后使用负向后查找来断言左侧的内容不是 b , f , idt并以单词边界 \b 结尾以确保后缀不是较大单词的一部分。

\w+_\w+(?<![bfi]|dt)\b

详细信息

  • \w+_\w+匹配一个或多个单词字符,一个 _以及一个或多个单词字符
  • (?<!负向回顾
  • )关闭负面回顾
  • \b字边界

Demo Java

关于java - 正则表达式适合所有不以已知后缀列表结尾的字符串(不是字符,而是单词),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50270608/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com