聪明的正则表达式替换 - 删除不必要的字符

时间:2013-08-16 08:45:41

标签: regex replace smarty

我必须将“100,23zł”和“29,23 $”之类的字符串更改为:

“100,23”“29,23”

所以我想删除所有字符而不是数字和','

3 个答案:

答案 0 :(得分:1)

我不知道如何使用您的语言,但它很简单,只需匹配任何不是数字或逗号的内容,并用空字符串替换它。

匹配任何非数字字符或逗号:(\D|,)*或此[^0-9,]*

替换为空字符串:""'',具体取决于您的语言字符串分隔符。

答案 1 :(得分:0)

你可以用空字符串替换这个/\s\D+/,这样做。当您在文件中没有任何其他内容时,这适用。如果您还有其他内容,请尝试此/\d+\s\D+/

答案 2 :(得分:0)

您可以使用仅包含数字和逗号的否定类:

[^0-9,]+

请参阅demo on regex101