请有人告诉我如何匹配"_"和句号"." 使用正则表达式在字符串中激动一次,使用indexOf()而不是正则表达式也更有效.
String s= "Hello_Wor.ld" or
s="12323_!£££$.asdfasd"
Run Code Online (Sandbox Code Playgroud)
基本上任何字符都不能在前后出现_,.唯一的要求是整个字符串只应包含一个_和的出现.
indexOf 将比正则表达式快得多,并且可能也更容易理解.
只测试是否indexOf('_') >= 0,然后如果indexOf('_', indexOfFirstUnderScore) < 0.在此期间做同样的事情.
private boolean containsOneAndOnlyOne(String s, char c) {
int firstIndex = s.indexOf(c);
if (firstIndex < 0) {
return false;
}
int secondIndex = s.indexOf(c, firstIndex + 1);
return secondIndex < 0;
}
Run Code Online (Sandbox Code Playgroud)