关于正则表达式的一些技巧

正则真是个蛮有意思的东西,但要完全掌握还是要理解的比较透。

1、找一句话里面同时存在多个关键词,位置先后无关

(?=.*词1)(?=.*词2)

2、获取一句话中有特殊标识的关键词

(?<=#@)(\w+)(?=@#)

也可以用: (#@)(.*?)(@#)   而取 $2

3、找一句话中包含xxx 但不包含 yyy,位置先后无关

(?=.*xxx)^(?!.*yyy|.*zzz)

4、找到被夹在指定的字符串中间的

(?<=左字符串)(.*?)(?=右字符串)

?<= 表示零宽正向后行断言, 即从左字符串最后一位后面的字符位置,开始匹配

.* 表示匹配所有字符  加 ? 表示非贪婪模式(即匹配到一个就行)

(?=表示零宽正向先行断言,即从右字符串刚匹配的前一位位置

posted on 2023-01-06 15:41  震撼起飞  阅读(31)  评论(0编辑  收藏  举报

导航