首页 > 解决方案 > 如果包含在“{! and }”中,则 Python 正则表达式用匹配替换值

问题描述

我想用匹配其中正则表达式的内容替换属性的内容,前提是它被“{!和}”包围,包括引号。

<lightning-button-menu iconname="utility:help" menualignment="right" onselect="{!c.handleMenuSelect}">
<lightning-menu-item label="Frequently Asked Questions" value="faq">
</lightning-menu-item>

onselect 如下所示:

onselect={handleMenuSelect}

如果这听起来令人困惑,请告诉我,以便我澄清

标签: pythonregexstring

解决方案


s = '''
<lightning-button-menu iconname="utility:help" menualignment="right" onselect="{!c.handleMenuSelect}">
<lightning-menu-item label="Frequently Asked Questions" value="faq">
</lightning-menu-item>
'''


import re

for match in re.finditer('"{!(.*?)}"', s):
    s = s[:match.start()] + '{' + match.group(1).split('.', 1)[1] + '}' + s[match.end():]

print(s)

结果:

<lightning-button-menu iconname="utility:help" menualignment="right" onselect={handleMenuSelect}>
<lightning-menu-item label="Frequently Asked Questions" value="faq">
</lightning-menu-item>

推荐阅读