gpt4 book ai didi

java - 获取字符串中多个字符串之一的第一次出现

转载 作者:行者123 更新时间:2023-11-29 03:20:09 27 4
gpt4 key购买 nike

假设我有一个字符串 ABCDEFGHIJKLMNOPQRSTUV。我想要一个内部字符串的索引:GHI、JKL 或 MNO;以先发生者为准。这是我所拥有的:

String Alphabet = "ABCDEFGHIJKLMNOPQRSTUV";
int leastIndex = Alphabet.indexOf("GHI");
if( Alphabet.indexOf("JKL") < leastIndex ) leastIndex = Alphabet.indexOf("JKL");
if( Alphabet.indexOf("MNO") < leastIndex ) leastIndex = Alphabet.indexOf("MNO");
return leastIndex;

我的问题是是否有更好的方法来做到这一点,例如:

int leastIndex = Alphabet.indexOf("GHI", "JKL", "MNO);

不过分的东西,尤其是较长的字符串和更多的模式。

最佳答案

尝试使用正则表达式。

Pattern pattern = Pattern.compile("(GHI|JKL|MNO)");
Matcher matcher = pattern.matcher(string);

if (matcher.find()) {
System.out.println(matcher.start()); // starting index
System.out.println(matcher.group()); // matched group
}

关于java - 获取字符串中多个字符串之一的第一次出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24172974/

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