gpt4 book ai didi

java - 正则表达式 - 除了给定单词之外的所有有效标识符?

转载 作者:行者123 更新时间:2023-12-01 18:17:53 24 4
gpt4 key购买 nike

假设我想要一个接受除给定单词(例如“foo”)之外的所有有效标识符(例如[a-zA-Z][a-zA-Z0-9]*)的正则表达式。以“foo”作为单词一部分的单词,例如“foobar”,都可以。我尝试使用消极的前瞻和后瞻,但我很挣扎,因为我想允许像“foobar”这样的词,而消极的前瞻将不允许这些词。我怎样才能做到这一点?

最佳答案

您可以尝试以下方法。

^(?!foo$)[a-zA-Z][a-zA-Z0-9]*$

(?!foo$) 开头的负向预测断言该行不会包含确切的字符串 foo

DEMO

String s[] = {"foobar", "foo", "bar", "foom", "mfoo"};
for(String i: s)
{
System.out.println(i.matches("(?!foo$)[a-zA-Z][a-zA-Z0-9]*"));
}

输出:

true
false
true
true
true

关于java - 正则表达式 - 除了给定单词之外的所有有效标识符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28560172/

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