正则表达式只匹配数字,没有撇号

时间:2015-06-25 08:23:39

标签: c# regex

我想只匹配以下字符串中的数字

String : "40’000"
Match : "40000"

基本上要忽略撇号。

我正在使用C#,以防万一。 不能使用任何C#方法,只需要使用Regex。

5 个答案:

答案 0 :(得分:1)

像这样替换它替换所有char excpet数字

string input = "40’000";
string result = Regex.Replace(input, @"[^\d]", "");

答案 1 :(得分:0)

既然你说过; 我只想提取数字,没有正则表达式怎么样?

var s = "40’000";
var result = new string(s.Where(char.IsDigit).ToArray());
Console.WriteLine(result); // 40000 

答案 2 :(得分:0)

我建议使用正则表达式来查找特殊字符而不是数字,然后用''替换。

所以一个简单的(?=\S)\D就足够了,(?=\S)就是忽略数字末尾的空格。

DEMO

答案 3 :(得分:0)

像这样替换它替换所有char excpet数字和点

string input = "40’000";
string result = Regex.Replace(input, @"[^\d^.]", "");

答案 4 :(得分:-1)

不要让你的生活复杂化,请使用Regex.Replace

string s = "40'000";
string replaced = Regex.Replace(s, @"\D", "");