C# C中的正则表达式字符串#
我有一根绳子C# C中的正则表达式字符串#,c#,regex,C#,Regex,我有一根绳子 "Máy Tính Acer[Asprise 4741 | 058941144] - 302"; "Máy Tính Acer[Asprise 4741 | 058941145] - 302"; 现在我想使用正则表达式获得2个字符串结果: 058941144 058941145 如果可以使用先行和后看断言,那么可以使用此正则表达式在和]之间进行匹配: (?<=\|\s)[0-9]+(?=]) (?模式是什么?您使用的语言是什么?总是
"Máy Tính Acer[Asprise 4741 | 058941144] - 302";
"Máy Tính Acer[Asprise 4741 | 058941145] - 302";
现在我想使用正则表达式获得2个字符串结果:
058941144
058941145
如果可以使用先行和后看断言,那么可以使用此正则表达式在
和]
之间进行匹配:
(?<=\|\s)[0-9]+(?=])
(?模式是什么?您使用的语言是什么?总是“Máy Tính Acer[Asprise 4741 |”然后是“]-302”?都是这样。输入有一个多重输入。输入是:“Name[Model | ID]-Room”\d{9}
如果数字始终是9位数字,并且是唯一的9位数字。您使用了上面的代码吗?您的输入是什么?有很多行吗?输入是:“Name[Model | ID]-Room”;好吧,这不会像您在这个位置指定的数字那样工作。请立即查看我的更新。@Szymon我已经删除了我的答案,您的工作代码是+1
String input = "Máy Tính Acer[Asprise 4741 | 058941144] - 302";
String pattern = @"(?<=\|\s)[0-9]+(?=])";
var match = Regex.Match(input, pattern).ToString();
String pattern = @"(?<=Máy Tính Acer\[Asprise\s4741\s\|\s)[0-9]+(?=]\s-\s302)";
String pattern = @"(?<=\|).+(?=])";