用于删除带括号的文本的正则表达式
Regular expression for removing text with parenthesis
以此文本为例 泣(な)き出(だ)した
,我想以编程方式删除注音假名(即 泣き出した
)。我试过了
re.sub(r"\([^()]*\)", "", '泣(な)き出(だ)した')
但它 returns 泣した
而不是。什么是更好的正则表达式?
你的字符 class 中的括号是半角 (半角) 而不是全角 (全角) 括号。
更换它们将解决您的问题:
import re
re.sub(r"\([^()]*\)", "", '泣(な)き出(だ)した')
# '泣き出した'
你应该试试
re.sub(r"\(.*?\)", "", '泣(な)き出(だ)した')
,它使用 non-greedy 量词 *?
。
以此文本为例 泣(な)き出(だ)した
,我想以编程方式删除注音假名(即 泣き出した
)。我试过了
re.sub(r"\([^()]*\)", "", '泣(な)き出(だ)した')
但它 returns 泣した
而不是。什么是更好的正则表达式?
你的字符 class 中的括号是半角 (半角) 而不是全角 (全角) 括号。
更换它们将解决您的问题:
import re
re.sub(r"\([^()]*\)", "", '泣(な)き出(だ)した')
# '泣き出した'
你应该试试
re.sub(r"\(.*?\)", "", '泣(な)き出(だ)した')
,它使用 non-greedy 量词 *?
。