正则表达式任何非数字异常

时间:2013-10-29 10:12:37

标签: ruby regex

我有这样的字符串:

+996999966966AA
-996999966966AA

我正在使用此代码:

"+996999966966AA".gsub!(/\D/, "")

除去数字以外的任何字符,但 + 符号也会被删除。我的代码如何保留 +

2 个答案:

答案 0 :(得分:5)

使用:

[^+\d]

匹配任何非+或数字的内容。

答案 1 :(得分:1)

您还可以使用\W,“非单词字符”匹配任何不是单词字符的字符(字母数字和下划线)。

(\W\d+)\w+