如何通过正则表达式分隔这些单词

时间:2016-04-23 15:49:01

标签: c# regex

我有一个假装如下:

"I.UILISTNConsolidatedGroup: 8000Quarte: AnnualUnit: USD" or
"I.UILISTNDOUxConsolidatedGroup: 8000Quarte: FullUnit: VND"

我必须从上面的句子中分成4个值:I.UILISTN,8000,Annual,USD。我正在使用index来分隔它,但它似乎很长很复杂,请帮我用正则表达式(c#)分隔这些值。 单词ConsolidatedGroup,Quarte,Unit是固定的。

提前致谢!

1 个答案:

答案 0 :(得分:3)

手动匹配几乎总是比正则表达更快。

string text = "I.UILISTNConsolidatedGroup: 8000Quarte: AnnualUnit: USD";
Regex regex = new Regex(@"([\w\.]+)ConsolidatedGroup: (\d+)Quarte: AnnualUnit: (\w+)");
var match = regex.Match(text);
foreach (var m in match.Groups)
{
    Console.WriteLine(m);
}

<强>输出:

I.UILISTNConsolidatedGroup: 8000Quarte: AnnualUnit: USD
I.UILISTN
8000
USD