相关疑难解决方法(0)

java正则表达式:性能和替代

最近我不得不搜索一些字符串值,看看哪一个匹配某个模式.在用户输入搜索词之前,字符串值的数量和模式本身都不清楚.问题是每次我的应用程序运行以下行时都注意到:

    if (stringValue.matches (rexExPattern))
    {
        // do something so simple
    }
Run Code Online (Sandbox Code Playgroud)

它需要大约40微秒.无需说当字符串值的数量超过几千时,它就会太慢.

模式类似于:

    "A*B*C*D*E*F*"
Run Code Online (Sandbox Code Playgroud)

其中A~F只是这里的例子,但模式有点像上面那样.请注意*每个搜索模式实际上都会发生变化.例如,"A*B*C*"可以改变为W*D*G*A*".

我想知道是否有更好的替代上述模式,或者更一般地说,替代java正则表达式.

java regex

31
推荐指数
2
解决办法
4万
查看次数

标签 统计

java ×1

regex ×1