【发布时间】:2018-12-03 17:42:01
【问题描述】:
我使用正则表达式从名称中删除特殊字符。该表达式将删除除英文字母之外的所有字母。
public static void main(String args[]) {
String name = "Özcan Sevim.";
name = name.replaceAll("[^a-zA-Z\\s]", " ").trim();
System.out.println(name);
}
输出:
zcan Sevim
预期输出:
Özcan Sevim
我这样做的结果很糟糕,正确的方法是删除基于 ASCII 码的特殊字符,这样其他字母就不会被删除,有人可以帮助我使用只删除特殊字符的正则表达式。
【问题讨论】:
-
为什么不使用包含所有特殊字符的正则表达式?因此,不要创建白名单,而是创建黑名单
标签: java regex string regex-negation