以下の文字列を正規表現の入力として使用すると、Java が 100% の CPU 使用率でハングします。
使用される正規表現:
これは、私のアプリケーションの説明フィールドに使用される正規表現です。
^([A-Za-z0-9\\-\\_\\.\\&\\,]+[\\s]*)+
テストに使用する文字列:
Provider_One からの SaaS サービス VLAN
ディディエ SPT での 2 回目の試みは、彼が私にくれた最初のものが間違っていたためです :-(
同じ文字列を異なる組み合わせで分割すると、正しく機能します。「Provider_One からの SaaS サービス VLAN」のように、「彼が最初にくれたものは間違っていました :-(」など。Java は上記の文字列に対してのみハングしています。
また、以下のように正規表現を最適化しようとしました。
^([\\w\\-\\.\\&\\,]+[\\s]*)+
これでも動作しません。