猿问

从字符串 Python 中删除括号和里面的数字

我已经看到了很多关于如何从Python中的字符串中删除括号的例子,但我还没有看到任何允许我从该字符串中删除括号和括号内的数字的例子。


例如,假设我有一个字符串,如“abc[1]”。如何从字符串中删除“[1]”以仅返回“abc”?


我尝试了以下方法:


stringTest = "abc[1]"

stringTestWithoutBrackets = str(stringTest).strip('[]')

但这只输出字符串而不输出最后一个括号


断续器[1


我还尝试了通配符选项:


stringTest = "abc[1]"

stringTestWithoutBrackets = str(stringTest).strip('[\w+\]')

但这也输出没有最后一个括号的字符串


断续器[1


大话西游666
浏览 222回答 3
3回答

凤凰求蛊

你可以使用正则表达式,但我认为最简单的方法是使用split:>>> stringTest = "abc[1][2][3]">>> stringTest.split('[', maxsplit=1)[0]'abc'

翻阅古今

您可以使用正则表达式,但您需要将其与模块一起使用:rere.sub(r'\[\d+\]',&nbsp;'',&nbsp;stringTest)如果零件始终位于字符串的末尾,您也可以通过以下方式进行剥离:[<number>]stringTest.rstrip('[0123456789]')虽然后一个版本可能会剥离,但如果前一个字符也在条带列表中。例如,在也会被剥离。["abc1[5]""1"

守着星空守着你

假设您的字符串具有“text[number]”格式,并且您只想保留“文本”,那么您可以执行以下操作:stringTest = "abc[1]"bracketBegin = stringTest.find('[')stringTestWithoutBrackets = stringTest[:bracketBegin]
随时随地看视频慕课网APP

相关分类

Python
我要回答