我有這個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]