试试这段代码,在我的项目中运行良好:
public final class ArabicNormalizer {
private String input;
private final String output;
public ArabicNormalizer(String input){
this.input=input;
this.output=normalize();
}
private String normalize(){
input=input.replaceAll("\u0610", "");
input=input.replaceAll("\u0611", "");
input=input.replaceAll("\u0612", "");
input=input.replaceAll("\u0613", "");
input=input.replaceAll("\u0614", "");
input=input.replaceAll("\u0615", "");
input=input.replaceAll("\u0616", "");
input=input.replaceAll("\u0617", "");
input=input.replaceAll("\u0618", "");
input=input.replaceAll("\u0619", "");
input=input.replaceAll("\u061A", "");
input=input.replaceAll("\u06D6", "");
input=input.replaceAll("\u06D7", "");
input=input.replaceAll("\u06D8", "");
input=input.replaceAll("\u06D9", "");
input=input.replaceAll("\u06DA", "");
input=input.replaceAll("\u06DB", "");
input=input.replaceAll("\u06DC", "");
input=input.replaceAll("\u06DD", "");
input=input.replaceAll("\u06DE", "");
input=input.replaceAll("\u06DF", "");
input=input.replaceAll("\u06E0", "");
input=input.replaceAll("\u06E1", "");
input=input.replaceAll("\u06E2", "");
input=input.replaceAll("\u06E3", "");
input=input.replaceAll("\u06E4", "");
input=input.replaceAll("\u06E5", "");
input=input.replaceAll("\u06E6", "");
input=input.replaceAll("\u06E7", "");
input=input.replaceAll("\u06E8", "");
input=input.replaceAll("\u06E9", "");
input=input.replaceAll("\u06EA", "");
input=input.replaceAll("\u06EB", "");
input=input.replaceAll("\u06EC", "");
input=input.replaceAll("\u06ED", "");
input=input.replaceAll("\u0640", "");
input=input.replaceAll("\u064B", "");
input=input.replaceAll("\u064C", "");
input=input.replaceAll("\u064D", "");
input=input.replaceAll("\u064E", "");
input=input.replaceAll("\u064F", "");
input=input.replaceAll("\u0650", "");
input=input.replaceAll("\u0651", "");
input=input.replaceAll("\u0652", "");
input=input.replaceAll("\u0653", "");
input=input.replaceAll("\u0654", "");
input=input.replaceAll("\u0655", "");
input=input.replaceAll("\u0656", "");
input=input.replaceAll("\u0657", "");
input=input.replaceAll("\u0658", "");
input=input.replaceAll("\u0659", "");
input=input.replaceAll("\u065A", "");
input=input.replaceAll("\u065B", "");
input=input.replaceAll("\u065C", "");
input=input.replaceAll("\u065D", "");
input=input.replaceAll("\u065E", "");
input=input.replaceAll("\u065F", "");
input=input.replaceAll("\u0670", "");
return input;
}
public String getOutput() {
return output;
}
public static void main(String[] args) {
String test = "كَلَّا لَا تُطِعْهُ وَاسْجُدْ وَاقْتَرِبْ ۩";
System.out.println("Before: "+test);
test=new ArabicNormalizer(test).getOutput();
System.out.println("After: "+test);
}
}