Regex:在两个数字之间的行中排除空格(.net)



我有一个语句(在一行中),我想只提取数字,而不是点和空格。如果有人能帮助我,那就太有帮助了。下面是示例语句(单行字符串):

BIC: XXXXXXXX姓名:MR. YYYYY INZ。ABCIRR。[cn] Abcdefghijlk: ABCDE: 57.10.70.13 2 THE NEXPRK BV IF THE VERREKENEN SALDO

我需要的输出是:571070132

我现在所实现的是单独拉入数字(没有2),下面是正则表达式:( d{2}。 d{2}。 d {2} d{2})。无法继续进行。请帮助

您不需要regex来做这样的事情- LINQ表达式str.Where(char.IsDigit)将工作得更好:

var str = "BIC: XXXXXXXX Naam: MR. YYYYY INZ. ABCIRR. NE Abcdefghijlk: ABCDE: 57.10.70.13 2 THE NEXPRK BV IF TE VERREKENEN SALDO";
var res = new String(str.Where(char.IsDigit).ToArray());
Console.WriteLine("'{0}'", res);

这会产生以下输出:

'571070132'

将正则表达式应用于此的问题是匹配将在多个组中生成,因此您的代码将需要迭代它们以构建最终输出。LINQ提供了一个更直接的方法,也更容易阅读。

你就快到了

应该可以

d{2}。 d {2} d{2}。 d {2} d

之后可以去掉。

最新更新