我正在尝试使用对象匹配通过正则表达式定义的组来拆分字符串,如下所示:
if(match.Success)
{
foreach (Group group in match.Groups)
{
foreach(Capture capture in group.Captures)
{
//...
}
}
}
我应该匹配的字符串是这样形成的:以“开头或不以”,任何字符任意次数(包括“,\r,\n等),如果以“结束”开头,后跟; 然后任意字符任意数量的时间,另一个;,至少完成一次空间和数字的混合。
我使用这个正则表达式:
("?[.|\n|\r|\r\n]*"?);(.*);([\d| ]*)(;([\d| ]*))*
我想要第一组是带有任何字符的字符串,第二组:字符串,它只是文本/数字,第三组总是在这里,是空格和数字的混合,如果有更多组空格和数字,将它们放入 4,5 6 等组中。
我必须匹配的字符串示例:
“VIS METAUX TETE CYLINDRIQUE FENDUE EN ACIER ZINGUE DIAMETRE M10”;长 60 毫米;0046 10 30
“Vis à métaux à tête cylindrique fendue。标准:DIN 84”;直径 3 毫米。长 16 毫米;0046 3 16
"Tournevis Torx sur monture : 10, 15, 20, 25, 30, 40";;0613 434 10;0613 434 10;0613 434 20
这根本不起作用,我匹配的组很少好,我不明白我怎么能做到这一点。