正则表达式挂起程序(100% CPU 使用率)
Java在100%CPU使用率的情况下挂起,当我使用下面的字符串作为正则表达式的输入时。
使用的正则表达式:
下面是用于我的应用程序中的描述字段的正则表达式。
^([A-Za-z0-9\\-\\_\\.\\&\\,]+[\\s]*)+
用于测试的字符串:
SaaS服务VLAN从Provider_One
第二次尝试与Didier SPT,因为他给我的第一个是错误的:-(
当我将同一字符串拆分为不同的组合时,它可以正常工作。比如“来自Provider_One的SaaS Service VLAN”,“他给我的第一个是错误的:-(”等。Java仅针对上述给定字符串挂起。
我还尝试优化正则表达式,如下所示。
^([\\w\\-\\.\\&\\,]+[\\s]*)+
即使这样也不起作用。