假设以下单词序列
BLA text text text text text text BLA text text text text LOOK text text text BLA text text BLA
我想要做的是将文本从BLA提取到LOOK,但是最接近外观的BLA.即我想得到
BLA text text text text LOOK
我应该如何使用正则表达式?我有一个有效的解决方案,但效率极低.
BLA(?!.*?BLA.*?LOOK).*?LOOK
是否有更好,更高效的方式来实现匹配这种模式?
我想做的是:我希望与BLA相匹配,然后向前推进,直到用LOOK进行正向前瞻或用BLA进行负向前瞻.但我不知道如何把它变成正则表达式.
作为引擎我在python中使用re.
解决方法
BLA(?:(?!BLA).)*?LOOK
试试这个.看看演示.
https://regex101.com/r/fA6wE2/12
要么
BLA(?:(?!BLA|LOOK).)*?LOOK
为了更安全.