如何删除花括号之间的文本

时间:2017-09-23 17:52:54

标签: string python-3.x

我有从csv文件中提取的字符串。我想知道如何使用Python从字符串中删除大括号之间的文本,例如:

string = 'some text hear { bracket } some text here'

我想得到:

some text hear some text here

我希望有人能帮助我解决这个问题,谢谢。

编辑: 回答 进口重新 string ='有些文字在这里听到{括号}一些文字' string = re.sub(r" \ s * {。} \ s ","",string) 打印(字符串)

4 个答案:

答案 0 :(得分:1)

假设:

>>> s='some text here { bracket } some text there'

您可以使用str.partitionstr.split

>>> parts=s.partition(' {')
>>> parts[0]+parts[2].rsplit('}',1)[1]
'some text here some text there'

或者只是分区:

>>> p1,p2=s.partition(' {'),s.rpartition('}')
>>> p1[0]+p2[2]
'some text hear some text there'

如果你想要一个正则表达式:

>>> re.sub(r' {[^}]*}','',s)
'some text hear some text there'

答案 1 :(得分:0)

>>> s = 'some text here { word } some other text'
>>> s.replace('{ word }', '')
    'some text here  some other text'

答案 2 :(得分:0)

像这样:

import re
re.sub(r"{.*}", "{{}}", string)

答案 3 :(得分:0)

您应该使用正则表达式:

import re
string = 'some text hear { bracket } some text here'
string = re.sub(r"\s*{.*}\s*", " ", string)
print(string)

输出:

some text hear some text here