关于正则表达式的一些技巧
正则真是个蛮有意思的东西,但要完全掌握还是要理解的比较透。
1、找一句话里面同时存在多个关键词,位置先后无关
(?=.*词1)(?=.*词2)
2、获取一句话中有特殊标识的关键词
(?<=#@)(\w+)(?=@#)
也可以用: (#@)(.*?)(@#) 而取 $2
3、找一句话中包含xxx 但不包含 yyy,位置先后无关
(?=.*xxx)^(?!.*yyy|.*zzz)
4、找到被夹在指定的字符串中间的
(?<=左字符串)(.*?)(?=右字符串)
?<= 表示零宽正向后行断言, 即从左字符串最后一位后面的字符位置,开始匹配
.* 表示匹配所有字符 加 ? 表示非贪婪模式(即匹配到一个就行)
(?=表示零宽正向先行断言,即从右字符串刚匹配的前一位位置