如果有的话,C#正则表达式匹配所有空格中间字符串

时间:2017-10-07 20:50:56

标签: c# regex

我对这个有点困惑。我将一些可能的字符串分成7组。

 string input = "05 28 55    +52 26 46"; // matches
 string input = "05:28:55.321-52,26,46.1"; // no match
 string input = "05,28,55.32  -52:26:46.1"; // matches

我有一个正则表达式创建7个组,可能有不同的分隔符:

string pattern = @"(\d{2})[\s:,](\d{2})[\s:,](\d{2}?[.]?\d*)?[ \t]+([+-])(\d{2})[\s:,](\d{2})[\s:,](\d{2}?[.]?\d*)";

我如何让正则表达式匹配+或 - 之前的空格,如果它存在与否?如果有一个或多个空格,它现在可以工作,但如果没有空格则不行。如果没有空间,我该如何跳过?的?在[\ t]之前+似乎没有按照我的想法工作。

谢谢!

1 个答案:

答案 0 :(得分:1)

[ \t]+更改为[ \t]*以匹配0或更多。

[ \t]+表示一个或多个
[ \t]*表示0或更多。