Python 2.7 在python中从字符串中删除子字符串
我有一个类似这样的字符串:Python 2.7 在python中从字符串中删除子字符串,python-2.7,Python 2.7,我有一个类似这样的字符串: OPEN BRANCH FROM BUS 264604 [19BVEO 345.00] TO BUS 264888 [19LRTY 345.00] CKT 1 OPEN BRANCH FROM BUS 264604 TO BUS 264888 CKT 1 我想删除“[”和“]”之间的子字符串。结果应该是这样的: OPEN BRANCH FROM BUS 264604 [19BVEO 345.00] TO BUS 264888 [19LR
OPEN BRANCH FROM BUS 264604 [19BVEO 345.00] TO BUS
264888 [19LRTY 345.00] CKT 1
OPEN BRANCH FROM BUS 264604 TO BUS 264888 CKT 1
我想删除“[”和“]”之间的子字符串。结果应该是这样的:
OPEN BRANCH FROM BUS 264604 [19BVEO 345.00] TO BUS
264888 [19LRTY 345.00] CKT 1
OPEN BRANCH FROM BUS 264604 TO BUS 264888 CKT 1
谢谢,您可以使用
split
:
s='OPEN BRANCH FROM BUS 264604 [19BVEO 345.00] TO BUS 264888 [19LRTY 345.00] CKT 1'
pieces=[s.split(']')[-1] for s in s.split('[')]
print(pieces)
['OPEN BRANCH FROM BUS 264604 ', ' TO BUS 264888 ', ' CKT 1']
sentence=''.join(pieces)
print(sentence)
'OPEN BRANCH FROM BUS 264604 TO BUS 264888 CKT 1'
您可以使用
拆分:
s='OPEN BRANCH FROM BUS 264604 [19BVEO 345.00] TO BUS 264888 [19LRTY 345.00] CKT 1'
pieces=[s.split(']')[-1] for s in s.split('[')]
print(pieces)
['OPEN BRANCH FROM BUS 264604 ', ' TO BUS 264888 ', ' CKT 1']
sentence=''.join(pieces)
print(sentence)
'OPEN BRANCH FROM BUS 264604 TO BUS 264888 CKT 1'
这是一种选择:
import re
str_in = 'PEN BRANCH FROM BUS 264604 [19BVEO 345.00] TO BUS 264888 [19LRTY 345.00] CKT 1'
str_out = re.sub('\\[[^\\]]*\\]', '', str_in)
打印stru out
as
PEN BRANCH FROM BUS 264604 TO BUS 264888 CKT 1
正则表达式模式是从for R开始的。它将匹配并用空字符串替换整个字符串中由方括号括起的任何字符序列
您可能还希望删除因删除括号内文本而创建的额外空间。如果您注意到了,移除后只剩下两个空间,而不是一个。如果是这种情况,您可以在re.sub
之后添加以下行
str_out = (' ').join(str_out.split(' '))
因此,stru_out
成为
PEN BRANCH FROM BUS 264604 TO BUS 264888 CKT 1
这是一种选择:
import re
str_in = 'PEN BRANCH FROM BUS 264604 [19BVEO 345.00] TO BUS 264888 [19LRTY 345.00] CKT 1'
str_out = re.sub('\\[[^\\]]*\\]', '', str_in)
打印stru out
as
PEN BRANCH FROM BUS 264604 TO BUS 264888 CKT 1
正则表达式模式是从for R开始的。它将匹配并用空字符串替换整个字符串中由方括号括起的任何字符序列
您可能还希望删除因删除括号内文本而创建的额外空间。如果您注意到了,移除后只剩下两个空间,而不是一个。如果是这种情况,您可以在re.sub
之后添加以下行
str_out = (' ').join(str_out.split(' '))
因此,stru_out
成为
PEN BRANCH FROM BUS 264604 TO BUS 264888 CKT 1