在括号内提取字符串 - PYTHON

Oll*_*y_t 6 python string split extract

我有一个字符串"Name(something)",我试图在括号内提取字符串的一部分!

我尝试了以下解决方案,但似乎没有得到我正在寻找的结果.

n.split('()')

name, something = n.split('()')
Run Code Online (Sandbox Code Playgroud)

Mar*_*oun 13

您可以使用简单的正则表达式来捕获括号之间的所有内容:

>>> import re
>>> s = 'Name(something)'
>>> re.search('\(([^)]+)', s).group(1)
'something'
Run Code Online (Sandbox Code Playgroud)

正则表达式匹配第一个"(",然后它匹配所有不是 ")":

  • \( 匹配字符"("字面意思
  • 捕获组([^)]+)贪婪地匹配任何不是")"的东西


tam*_*tam 10

作为对@Maroun Maroun 回答的改进:

re.findall('\(([^)]+)', s)
Run Code Online (Sandbox Code Playgroud)

它找到括号之间的所有字符串实例


Luc*_*uca 5

您可以像示例中那样使用 split 但这样

val = s.split('(', 1)[1].split(')')[0]
Run Code Online (Sandbox Code Playgroud)

或使用正则表达式