Python lookbehind regex问题:无效的正则表达式:lookbehind需要fixedwidth模式

2024-09-27 21:30:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要在双引号之间匹配换行符,如:

<p class="calibre1">“This is the first sentence.</p>
<p class="calibre1">And this is the second!”</p>

这将匹配</p> <p class="calibre1">

现在,我使用正则表达式(?<=“[^”]*)</p>\s*<p[^>]*>(?!“),但是当我尝试非手动使用它时,我得到标题中描述的错误:“无效正则表达式:lookbehind requires fixed width pattern”中描述的错误。我需要这个正则表达式用于电子书管理/编辑程序Calibre,它使用Python作为正则表达式引擎。如果要在上面的regeboi上手动搜索一个regeboi选项,请尝试运行该选项。在

我看不出如果后面没有可变宽度的观察怎么可能做到这一点,因为你不知道从左双引号到换行符要多长时间。我们将非常感谢您的帮助!在


Tags: andtheis选项错误手动thissentence
2条回答

Pythonre模块与大多数语言一样(除了.NET的显著例外),不支持可变长度的lookbehind。在

你不能用capturing group代替吗?在

“[^”]*(</p>\s*<p[^>]*>)

first capturing group中的数据。在

lookbehind的宽度必须为零,因此不允许使用量词。在

相关问题 更多 >

    热门问题