正则表达式 向前最短匹配

正则表达式 向前最短匹配

使用正则表达式 .*? 可以向后匹配最短的,那么如何向前匹配最短的呢

向前的不再能使用 .*? ,因为它会从第一个字母向后找,直到有匹配的,也就相当于找了一个最长的匹配

所以这时候应该换一种思路

使用 a[^a]+ 来匹配,也就是说要匹配的字符串前面不能有a,那就是最短的匹配

我们来看一个 Python 写的例子:

reg = r'```[^```]+' + clipContent + r'.*?```'

我们要从 clipContent 向前找到第一次出现 ```` ` ,所以思路应该是向前找到第一个你所想要的内容

这里有一个实际案例

打赏
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2020-2021 wiidede
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~

支付宝
微信