我尝试使用正则表达式与分隔符之间的给定关键字集完全匹配?
例如:
关键字:keyone、keytwo、keythree 开始分隔符:; 结束分隔符:;
被测文本:一些文本;keyone;其他文字;keytwo; 一些文字;keythreeeee;
我试过的正则表达式:;([keyonekeytwokeythree]+);
这个正则表达式的问题是,这也与 keythreeeee 匹配。我的期望是它不应该匹配 keythreeeee,因为这不是完全匹配。
您应该阅读正则表达式语法。
([keyonekeytwokeythree]+)
方括号语法告诉正则表达式匹配器匹配“集合中任意数量的字符keyonekeytwokeythree
”。因此它也会匹配yekenoeerth
。
您正在寻找类似的东西:
;(keyone|keytwo|keythree);
你应该使用这样的正则表达式:
;(keyone|keytwo|keythree);
我首先将所有文本放在分隔符中。
(delmiterSart)(.)*(delimiterEnd)
然后在这个选定的文本上,我尝试搜索你的单词
(key1|key2|keyn)+