gpt4 book ai didi

java - 正则表达式如果行不包含关键字

转载 作者:行者123 更新时间:2023-11-29 08:25:00 27 4
gpt4 key购买 nike

您将如何设置表达式以查找输入字符串中不存在的关键字?关键词是:鸡蛋、培根、奶酪

函数是:

    if (!line.matches("eggs") || !line.contains("bacon")|| !line.contains("cheese") )
{
match=line;
}

return matchregex;

最佳答案

匹配鸡蛋或培根或奶酪的正则表达式是:

(eggs|bacon|cheese)

您需要检测行何时不匹配,因此您可以像这样否定条件:

if (!line.matches("(eggs|bacon|cheese)") {
// Do something
}

这匹配整行。如果您想判断该行是否包含这些词中的任何一个,您需要进行不同的匹配——使用.*。匹配该行的其余部分,或使用 PatternMatcher .

我会使用:\b标记单词边界,以确保您只匹配 cheese并且不匹配 cheesecake .

Pattern pattern = Pattern.compile("\\b(eggs|bacon|cheese)\\b");
Matcher matcher = pattern.matcher(line);
if (!matcher.find()) {
// Do something
}

或者:

if (!line.matches(".*\\b(eggs|bacon|cheese)\\b.*")) {
// Do something
}

您必须将反斜杠加倍以将其转义到字符串中。

关于java - 正则表达式如果行不包含关键字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53955225/

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