在Groovy脚本中从字符串中删除特殊字符

在Groovy脚本中从字符串中删除特殊字符,groovy,soapui,Groovy,Soapui,我希望使用groovy删除字符串中的特殊字符,我已经差不多做到了,但是它正在删除我想要保留的已经存在的空白。我只想删除特殊字符(而不是留下空白)。我正在运行下面的邮政编码L&65$$OBH def removespecialpostcodce = PostCode.replaceAll("[^a-zA-Z0-9]+","") log.info removespecialpostcodce def RemoveSpecialPostCode=PostCode.replaceAll(“[^a-zA-

我希望使用groovy删除字符串中的特殊字符,我已经差不多做到了,但是它正在删除我想要保留的已经存在的空白。我只想删除特殊字符(而不是留下空白)。我正在运行下面的邮政编码L&65$$OBH

def removespecialpostcodce = PostCode.replaceAll("[^a-zA-Z0-9]+","") log.info removespecialpostcodce def RemoveSpecialPostCode=PostCode.replaceAll(“[^a-zA-Z0-9]+”,“”) log.info删除特定的后代码 目前它返回L65OBH,但我正在寻找它返回L65OBH

有人能帮忙吗?

使用以下代码:

 PostCode.replaceAll("[^a-zA-Z0-9 ]+","")
而不是

 PostCode.replaceAll("[^a-zA-Z0-9]+","")

要删除字符串中的所有特殊字符,可以使用反转正则表达式字符:

replaceAll("[^A-Za-z-0-1]","")    
但我注意到该解决方案存在局限性,因为该代码:

String str = "..\\.-._./-^+* ".replaceAll("[^A-Za-z-0-1 ]","")
System.out.println("str: <"+str+">")
<-- >  
str = str.replaceAll("[- ]", "")