java中的正则表达式与indexOf的性能相比

前端之家收集整理的这篇文章主要介绍了java中的正则表达式与indexOf的性能相比前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
请有人告诉我如何匹配“_”和句号“.”使用正则表达式在字符串中激动一次,使用indexOf()而不是正则表达式也更有效.
String s= "Hello_Wor.ld"  or 
s="12323_!£££$.asdfasd"

基本上任何字符都不能出现在_和之前和之后.唯一的要求是整个字符串只应包含一个_和的出现.

解决方法

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;
}

猜你在找的Java相关文章