正则表达式匹配由几个组组成的模式

时间:2018-03-11 22:01:46

标签: c# regex

我有以下正则表达式,但它只匹配找到的模式的最后一个匹配项。正则表达式旨在匹配以下模式:

单个数字后跟\

单词后跟\

另一个词后跟\

第四组可以是一个单词,后跟一个\或2或3个单词,后跟\

第五组必须是00.00

格式的浮点数

正则表达式为:

([0-9])\\(\w+)\\(\w+)\\((\w+\s+\w+\s+\w+)|\w+\s\w+|\w+)\\([+-]?\d*\.\d+)(?![-+0-9\\.])\\

匹配的字符串是:

2\James\Brown\Football Club Mu\15.45\1\Jessie\Ellis\Football Club Performance\15.48\4\Dane\Brown\FC Football \15.52\5\Richardo\Flemmings\Football Club Striders\15.53\7\Lawrence\Brown\Football Club Testing\15.53\8\Jermy\Black\Football Club Ch\15.34\\

仅当正则表达式不以\\结尾且与正则表达式匹配的字符串不以&#34; \\&#34; <终止时,才会检测到最后一条记录的匹配。 / p>

注意,要与正则表达式进行比较的字符串始终以&#34; \\&#34;终止。

1 个答案:

答案 0 :(得分:1)

您提供的正则表达式似乎根本不起作用。我无法弄清楚你要用它做什么,特别是'+'和' - '字符。为了完全符合您的定义,我有这个:

([0-9])\\\w+\\\w+\\(\w+( \w+)?( \w+)?)\\[0-9][0-9]\.[0-9][0-9]

虽然您的示例与您的定义不完全匹配,因为它们具有尾随'\',并且第三个示例在第四组中具有尾随空格。假设这些示例有效,我已将其修改为:

([0-9])\\\w+\\\w+\\(\w+( \w+)?( \w+)?) ?\\[0-9][0-9]\.[0-9][0-9]\\
相关问题