2017-02-02 358 views
1

我有一个文本,其中包含很多括号和文字。除去这些括号(和文字),我写了这个:从句子中删除括号(和括号内的文字)

import re 
def generalDatacleaning(mystring): 
    result = re.sub(r'[]', '', mystring) 
    print(result) 

上一个例句运行然而,这给了我“ETE”(该支架的内侧):

test = "[ete], this is a text" 
generalDatacleaning(test) 

我应该怎么改所以[文本]部分被删除?

回答

1

这工作:

re.sub(r"\[[^]]*\]", "", test) 

开始于左括号,需要在它的一切,是不是一个右括号,需要右括号。全部替换为空字符串。

比。*更有效率? (不需要所谓的“回溯”),也可以在括号内使用换行符。