我想将属性的内容替换为与其中正则表达式匹配的内容,前提是它被"{!和 }",包括引号。
<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}
如果这听起来令人困惑,请告诉我,以便我澄清
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>
这必须帮助您:
import re
string='''
<lightning-button-menu iconname="utility:help" menualignment="right" onselect="{!c.handleMenuSelect}">
<lightning-menu-item label="Frequently Asked Questions" value="faq">
</lightning-menu-item>
'''
for f in re.finditer(r'onselect="{![S]+}"', string):
string= string[:f.start()+len('onselect"{!')]+'handleMenuSelect'+string[f.end()-len('}"'):]
print(string)
其中字符串是您的文本