[英]Regex : To exclude white spaces in a line which is between 2 numbers (.net)
我有一条语句(一行),我只想提取数字,而不是点和空格。 如果有人可以帮助我,那将有很大的帮助。 以下是示例语句(单行字符串):
BIC:XXXXXXXX Naam:先生。 YYYYY INZ。 ABCIRR。 NE Abcdefghijlk:ABCDE:57.10.70.13 2如果是VERREKENEN SALDO,则为NEXPRK BV
我需要的输出是:571070132
我现在实现的是仅输入数字(不带2),下面是正则表达式:(\\ d {2}。\\ d {2}。\\ d {2}。\\ d {2})无法输入向前。 请帮忙
您不需要像这样的正则表达式str.Where(char.IsDigit)
表达式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
之后,您可以删除。 和''(空格)带有替换选项(如果保留)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.