我有这个string = "abc('abt')"
,我想提取这个值。reg从括号中提取内容
我试过了:string = string.strip("abc('/)")
我正在使用python。如果结果是't',但我想'abt'。我该怎么做?
我有这个string = "abc('abt')"
,我想提取这个值。reg从括号中提取内容
我试过了:string = string.strip("abc('/)")
我正在使用python。如果结果是't',但我想'abt'。我该怎么做?
下面是会发现里面单一切正则表达式括号内的引号。它搜索后面带有单引号的左括号,然后收集导致另一个单引号和右括号的所有内容:
>>> import re
>>> s = "abc('abt')"
>>> regex = re.compile("\('(.*)'\)")
>>> m = re.search(regex, s)
>>> m.group(1)
'abt'
^[^=]*=\sabc\(['"]?(\w+)['"]\)$
这个正则表达式将捕获你想要的第一组。我不知道如何提取它在Python值,让我google了一下:)
import re
regex = re.compile(r"^[^=]*=\s\"abc\(['""]?(\w+)['""]\)\"$")
input = "string = \"abc('abt')\""
matches = regex.match(input)
your_val = matches.group(1)
注意,这个表达式只会工作字符串与“值”,如“ABC‘’”
对不起,我手边没有Python,没有测试过,但我认为你有这个想法。
.strip()
需要设置要删除的字符。您正在删除所有的a
,b
,c
,(
,'
,/
和)
字符形成的开始和结束。然后只剩下t
。
你可能分裂的'
代替:
string.split("'")[1]
,或者你可以明确地从一开始就删除的确切文字,并用切片结束:
string[5:-2]