我遇到了一个问题,我需要查看提供的字符串是否包含我正在寻找的中间 3 个字符。
例如。我们总是会得到 9 个字符串,其中我想比较中间的 3 个字符,例如“abc”。如果条件匹配,那么我想应用一些逻辑。谁能给我举个例子吗?
提前致谢
我想这就是你想要的
^.{3}abc.{3}$
^.*abc.*$
你也可以使用类似的东西^.{3}abc.{3}$
来匹配中间的三个字符。
substring
使用and可能更有意义equals
:
if(s.substring(3, 6).equals("abc"))
// ...
但是如果你真的想要一个正则表达式,你可以写:
if(Pattern.compile("...abc...", Pattern.DOTALL).matcher(s).matches())
// ...
int mid = (test.length()/2);
string = string.substring(mid-1, mid+2);
if (string.equals("abc"))
{
do stuff
}
这是一个使用子字符串获取中间三个字符的示例。您可能需要添加一个检查,以防字符串长度少于 3 个字符以防止错误。将 abc 更改为您要检查的任何内容。