繁体   English   中英

C#中的正则表达式字符串

[英]Regex String in C#

我有一个弦

"Máy Tính Acer[Asprise 4741 | 058941144] - 302";
"Máy Tính Acer[Asprise 4741 | 058941145] - 302";

现在,我想使用正则表达式来获取2个字符串结果:

058941144

058941145

如果可以使用先行断言和后向断言,则可以使用此正则表达式在|之间进行匹配| ]

(?<=\|\s)[0-9]+(?=])

在C#中,您可以使用以下代码:

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 = @"(?<=\|).+(?=])";

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM