正则表达式从税号中删除破折号

mtg*_*ker 2 regex replace

我有一个税号12-1234567,需要删除破折号/连字符,所以它都是数字 121234567 我已经阅读了不同的帖子并尝试了示例,但无法使其正常工作。

我已经使用^\d[2}\D\d[7}$并更换\D\W("[^0-9\\+]", "")等等。

我知道这很简单,但我是 RegEx 的新手,但需要一点帮助。

Mik*_*oud 5

好吧,我不确定你用什么语言来代替它。但是这个正则表达式-会匹配破折号。但我不得不说,如果你使用 C#,你应该这样做:

var val = taxId.Replace("-", "");
Run Code Online (Sandbox Code Playgroud)

如果您在 VB.NET 中:

Dim val As String
val = taxId.Replace("-", "")
Run Code Online (Sandbox Code Playgroud)

如果您使用 PHP:

var $val = str_replace("-", "", $taxId);
Run Code Online (Sandbox Code Playgroud)

如果您使用的是 perl:

$val =~ s/-//g;
Run Code Online (Sandbox Code Playgroud)

如果您使用 JavaScript:

var val = taxId.replace("-", "");
Run Code Online (Sandbox Code Playgroud)

我的意思是,您当然可以使 Regex 复杂化并执行以下操作:

\d{2}(-)\d{7}
Run Code Online (Sandbox Code Playgroud)

并且-将在组中。但同样,这对于 Regex 来说并不是真正的工作。