php用正则表达抓取网页中文章(Python/JavaScript中是否存在支持可变长度-assertion的正则表达式实现?)

优采云 发布时间: 2022-04-01 04:10

  php用正则表达抓取网页中文章(Python/JavaScript中是否存在支持可变长度-assertion的正则表达式实现?)

  Python/PHP/JavaScript 中是否有支持变长lookbehind-assertion 的正则表达式实现?

  /(?

  如何写一个意义相同但不使用lookbehind-assertion的正则表达式?

  这样的断言一天能实现吗?

  我觉得情况好多了。

  更新:

  (1)已经有一些正则表达式实现支持变长lookbehind断言。

  Python 模块正则表达式(不是标准的 re,而是其他正则表达式模块)支持此类断言(并具有许多其他不错的功能)。

  >>> import regex

>>> m = regex.search('(?>> print m.group()

bar

>>> m = regex.search('(?>> print m

None

  对我来说,Perl 和 Python 不使用正则表达式非常令人惊讶。也许,Perl 也有一个“增强的正则表达式”实现?

  (感谢 MRAB + 1)。

  (2)现代正则表达式有一个很酷的特性正则表达式。

  表示法意味着当您进行替换时(在我看来,断言最有趣的用例是替换),在正则表达式之前找到的所有字符都不得更改。

  s/unchanged-part\Kchanged-part/new-part/x

  这几乎就像一个后断言,但肯定没有那么灵活。

  更多关于正则表达式:

  据我了解,您不能在同一个正则表达式中使用 \K 两次。而且,在“杀死”你找到的角色之前,你无法分辨。这总是一直到行首。

  (感谢 ikegami +1)。

  我的其他问题:

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线