java 去除字符串中所有特殊字符_如何从字符串中删除特殊字符?_java_酷徒编程知识库...

这取决于你将什么定义为特殊字符,但是,请尝试replaceAll(...) :String result = yourString.replaceAll("[-+.^:,]","");

请注意,^字符不能是列表中的第一个字符,因为您必须要转义它,否则它将意味着"除了这些字符之外的任何字符"。

另一个注意:-字符需要是列表中的第一个或最后一个,否则必须转义它。

因此,为了保持一致性而不依赖于字符定位,你可能需要转义正规表达式(以下列表不完整,因此请注意(,{,$等等等其他字符)中具有特殊含义的所有字符:String result = yourString.replaceAll("[-+.^:,]","");

如果你想去掉所有标点和符号,请尝试以下正规表达式: p{P}p{S} (记住,在Java字符串中,必须转义斜杠: "p{P}p{S}" )。

第三种方法可能是这样的,如果你可以准确地定义字符串中应留下的内容,请执行以下操作:String result = yourString.replaceAll("[^ws]","");

这意味着:替换不是单词字符(在任何情况下,a-z,0-9或)或空格的所有内容。

编辑:请注意,有两种其他模式可能会有所帮助,但是,我不能全部解释,所以,看看regular-expressions.info的参考部分。String result = yourString.replaceAll("[^p{L}p{Z}]","");

正规表达式匹配任何语言中不是字母的所有内容,而不是分隔符(空格,linebreak等等),注意,你不能使用[P{L}P{Z}] (大写p意味着没有那个属性),因为这意味着"不是字母或非空格",因为字母不是空格。

有关Unicode的其他信息

有些unicode字符可能会导致问题,因为不同的方法将它们编码为(作为单个代码点或代码点的组合),请参考regular-expressions.info了解更多信息。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值