Yu *_* Gu 9 python regex python-3.x
\K意味着重置匹配的开始,当不支持复杂的lookbehind(即,它不允许+和*用于lookbehind)时,这非常有用。它很好地满足了我的需求,但是,当我尝试在 python 中使用它时,它报告bad escape \K. 以下是我的Python代码:
re.sub(r'\[\n[ ]+\d+, ?\n[ ]+\K\d+(?=, ?\n[ ]+(?:true|false)\n[ ]+\])', '__table1.column__', content)
Run Code Online (Sandbox Code Playgroud)
您可以改用 2 个捕获组:
(\[\n[ ]+\d+, ?\n[ ]+)\d+(, ?\n[ ]+(?:true|false)\n[ ]+\])
Run Code Online (Sandbox Code Playgroud)
在替换使用中:
\1__table1.column__\2
Run Code Online (Sandbox Code Playgroud)
例如
re.sub(
r'(\[\n[ ]+\d+, ?\n[ ]+)\d+(, ?\n[ ]+(?:true|false)\n[ ]+\])',
r'\1__table1.column__\2',
content
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3405 次 |
| 最近记录: |