Java Regex stimmt nicht außerhalb des ASCII -Bereichs überein, verhält sich anders als Python Regex
Posted: 24 Jul 2025, 20:07
Ich möchte Strings aus Dokumenten genauso filtern wie der CountVectorizer von Sklearn. Es verwendet die folgende Regex: (? U) \ B \ W \ W+\ B < /code>.
Dieser Java -Code sollte genauso verhalten: < /p>
Was kann ich tun, um Nicht-ASCII-Zeichen einzubeziehen, wie der Python Regeex tut?
Dieser Java -Code sollte genauso verhalten: < /p>
Code: Select all
Pattern regex = Pattern.compile("(?u)\\b\\w\\w+\\b");
Matcher matcher = regex.matcher("this is the document.!? äöa m²");
while(matcher.find()) {
String match = matcher.group();
System.out.println(match);
}
< /code>
, aber dies erzeugt nicht die gewünschte Ausgabe, wie in Python: < /p>
this
is
the
document
äöa
m²
< /code>
Es gibt stattdessen aus: < /p>
this
is
the
document