gpt4 book ai didi

java - 字符串等于/包含它们都没有得到我想要的

转载 作者:行者123 更新时间:2023-12-01 17:51:14 25 4
gpt4 key购买 nike

我有一个字符串,看起来有点像:

NCC_johjon (\users\johanjo\tomcattest\oysters\NCC_johjon, port 16001), utv_johjon (\users\johanjo\tomcattest\oysters\utv_johjon, port 16000)

可能有很多 NCC_etskys、NCC_homyis 等,我想检查字符串中的某个位置是否有一个部分显示“NCC_joh”已经存在。我尝试过类似

if(oysters.contains("NCC_joh")){
System.out.println("HEJ HEJ HEJ HALLÅ HALLÅ HALLÅ");
}

但是如果那里有一个 NCC_johjon ,它会进入 if 情况,但我只想进入如果确切地说该部分存在不再不短且 .equal 它需要看起来像整个字符串,这不是什么我都想要。有人知道吗?如果我使用的是字符串列表会更好,但我没有。oysterPaths 最初是一个集合

Collection<TomcatResource> oysterPaths = TomcatResource.listCats(Paths.get(tomcatsPath));

最佳答案

使用正则表达式。

if (oysters.matches("(?s).*\\bNCC_joh\\b.*")) {

哪里

  • (?s) = 单行模式,DOT-ALL,因此 . 也将匹配换行符。
  • . = 任意字符
  • .* = 零次或多次出现 .(任何字符)
  • \b = 字边界

String.matches 对整个字符串进行模式匹配,因此在开始和结束处需要 .*

(单词边界当然意味着,在它们之间必须放置一个单词。)

关于java - 字符串等于/包含它们都没有得到我想要的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49878929/

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