Python 2.7 | 使用RegEx插入变量的右括号

我有一个包含以下内容的文件:


  a[0  a[1  a[2  a[3  a[4  a[5  a[6  a[7  a[8 \

  a[9  a[10  a[11  a[12  a[13  a[14  a[15  a[16 \

  a[17  a[18  a[19  a[20  a[21  a[22  a[23  a[24 \

  a[25  a[26  a[27  a[28  a[29  a[30  a[31  b[0  b[1 \

  b[2  b[3  b[4  b[5  b[6  b[7  b[8  b[9  b[10 \

  b[11  b[12  b[13  b[14  b[15  b[16  b[17  b[18 \

  b[19  b[20  b[21  b[22  b[23  b[24  b[25  b[26 \

  b[27  b[28  b[29  b[30  b[31

我想为每个变量插入一个右括号。这些数字可能会随着将来的变量而增加。我们如何使用正则表达式呢?提前致谢。


幕布斯7119047
浏览 150回答 3
3回答

慕森卡

您可以使用模式:([a-z]\[\d+)在Python中:import remystr = """  a[0  a[1  a[2  a[3  a[4  a[5  a[6  a[7  a[8 \  a[9  a[10  a[11  a[12  a[13  a[14  a[15  a[16 \  a[17  a[18  a[19  a[20  a[21  a[22  a[23  a[24 \  a[25  a[26  a[27  a[28  a[29  a[30  a[31  b[0  b[1 \  b[2  b[3  b[4  b[5  b[6  b[7  b[8  b[9  b[10 \  b[11  b[12  b[13  b[14  b[15  b[16  b[17  b[18 \  b[19  b[20  b[21  b[22  b[23  b[24  b[25  b[26 \  b[27  b[28  b[29  b[30  b[31"""print(re.sub(r'([a-z]\[\d+)',r'\1]',mystr))

ABOUTYOU

您不需要使用正则表达式。只需使用split和join:' '.join(map(lambda x: f'{x}]', text.strip().split()))
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python