【问题标题】:How to include regex pattern matches into substitution output [duplicate]如何将正则表达式模式匹配包含到替换输出中[重复]
【发布时间】:2018-01-31 04:47:55
【问题描述】:

例如,如果我想在连字符前面有一个大写字母(A-、C- 等)的所有实例之间添加一个空格,那么我可以使用什么函数来实现这一点?

或者,有没有办法让 re.sub 输出匹配的模式? :

>>> text = 'T- AB-'
>>> re.sub(r'\b[A-Z]-', 'what goes here?', text)
>>> text
'T - AB-'

【问题讨论】:

标签: regex


【解决方案1】:

您希望使用捕获括号和 \1

import re

text = 'T- AB-'
text = re.sub(r'\b([A-Z])-', r'\1 -', text)
print (text)

结果:

T - AB-

这应该可以解决问题。在 ( ) 中捕获的任何内容都可以用 \1 引用。如果你有一系列括号,每组都可以引用,如 \2、\3 等。祝你好运!

【讨论】:

    猜你喜欢
    • 2019-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-06
    • 1970-01-01
    • 2020-01-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多