Regulärer Ausdruck hängt - Java Matcher
Zeichenfolge:
Aqua, Natriumlaurethsulfat, Natriumlaurethsulfat, Dimethicon, Cocamid MEA, Zinkcarbonat, Glykoldistearat, Natriumchlorid, Zinkpyrithion, Natriumxylolsulfonat, Cetylalkohol, Parfum, Guarhydroxypropyltrimoniumchlorid, Magnesiumsulfat, Natriumbenzoat, Ammoniumlaurethsulfat, Magnesiummagnesium Carbonathydroxid, Linalool, Butylphenylmethylpropional, Limonen, Hydroxyisohexyl-3-cyclohexencarboxaldehyd, Benzylalkohol, Hexylzimt, Citronellol, Tocopherylacetat, Paraffinum Liquidum, Natriumpolynaphthalinsulfonat, CI 19140, DMDM-Hydantoin, Chlorid Methylisothiazolinon.
Aktueller Regex:
System.out.println(string.matches("([\\W]*\\b[A-Z\\d]\\w+\\b[\\W]*)+"));
Java-Anwendung legt auf. Ich kann den Fehler in der RegEx nicht finden. Durch Googeling habe ich herausgefunden, dass dies als "katastrophales Backtracking" bezeichnet werden kann !? Der Regex sollte mit dem String übereinstimmen, wenn er nur Großbuchstaben enthält, wenn beispielsweise 1 Wort in Kleinbuchstaben nicht übereinstimmen sollte.