我有以下表达式:
MN = Abc123,MN = sssa,MN = abc adsa 1,MN =&3amsd'amé,MN = dat,CB = ds,CB = ds
如何逐一提取 MN = 后面的表达式? 例如:首先我要提取 Abc123 ,其次我要 sssa 等等......
感谢您的回答!
答案 0 :(得分:0)
使用捕获组:
"[A-Z]{2}=([^,]+)"
然后从匹配对象中获取第一组。
或者,如果您所处理的语言支持环视,您可以使用正面的后视来直接匹配预期的部分:
"(?<=[A-Z]{2}=)[^,]+"
答案 1 :(得分:0)
如果您的正则表达式环境支持lookbehind,您可以使用此正则表达式提取所需信息:
支持Lookbehind的环境
(?<=MN=)(.*?)(?=,)
环境不支持Lookbehind
(?:MN=)(.*?)(?=,)
您想要的结果将存储在第1组,即$1
根据您的输入字符串,这是结果
Abc123
sssa
abc adsa 1
&3ams d'amé
dat
查看实时演示here