繁体   English   中英

接受一个可以包含特定集合的字符串 + 如果它包含特定单词则拒绝它

[英]Accept a string that can contain specific set + reject it if it contains specific word

我有一个下面提到的正则表达式。

(^[\s]*[0-9a-zA-Z\^\@\{\}\[\]\,\$\=\!\-\#\(\)\.\%\*\+\'\~\""\:\;\_\?]+[0-9a-zA-Z\^\@\{\}\[\]\,\$\=\!\-\#\(\)\.\%\*\+\'\~\""\:\;\_\?\s]*[0-9a-zA-Z\^\@\{\}\[\]\,\$\=\!\-\#\(\)\.\%\*\+\'\~\""\:\;\_\?]*[\s]*$)

我想在这个正则表达式中再添加一个条件,如果它包含单词“java”,它应该拒绝完整的字符串。 我在这个站点上尝试了许多其他示例,但无法获得正确的解决方案。

我将它与实际上是一个段落的字符串匹配,即它可以包含换行符、制表符和多个空格。

(?!X) 零宽度负前瞻添加到开头。

如果您不知道现有的正则表达式是什么,请将其包装在非捕获组中,否则为顶级| (或)会破坏它。

String newRegex = "(?!(?s:.*?)java)(?:" + oldRegex + ")";

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM