我有一个阿拉伯字符串,我需要删除所有特殊字符,LATIN ALPHABET,标点符号,例如(,。;)和阿拉伯语标点符号,例如()我写了以下代码
String input = "some text";
Pattern p = Pattern.compile("[\\p{P}\\w]");
java.util.regex.Matcher m = p.matcher(input);
while (m.find()) {
}
m.reset();
input = m.replaceAll(" ");
p = Pattern.compile("[\\p{Mn}\\p{Nd}\\p{InLatin-1Supplement}]+");
m = p.matcher(input);
while (m.find()) {
}
m.reset();
input = m.replaceAll("");
它几乎适用于所有角色,但我仍然有问题删除或替换那些($ ^ +&lt;&gt; |),我不想通过重复replaceAll语句删除每一个,我甚至尝试过< / p>
Pattern p = Pattern.compile("[^\\p{L}\\p{Nd}]+");
还会在结果文本中找到那些($ ^ +&lt;&gt; |),无论如何都可以这样做?