0
您好,我有一個像這樣正則表達式找到號碼在特定位置
track._Event('product', 'test');Product.lisen(1234, 21, 4343); return false;
我想使用一些正則表達式,所以我最終會與團體
pid = 1234
p1 = 21
p2 = 4343
您好,我有一個像這樣正則表達式找到號碼在特定位置
track._Event('product', 'test');Product.lisen(1234, 21, 4343); return false;
我想使用一些正則表達式,所以我最終會與團體
pid = 1234
p1 = 21
p2 = 4343
import re
s = "track._Event('product', 'test');Product.lisen(1234, 21, 4343); return false;"
pattern = re.compile(r'.*lisen\((?P<pid>\d+),\s*(?P<p1>\d+),\s*(?P<p2>\d+)\).*')
pid, p1, p2 = map(int, pattern.match(s).groups())
注意的字符串:我使用了命名捕獲組,但在這種情況下這不是必需的。
爲什麼正則表達式?你可以做到這一點將簡單的字符串操作
>>> s="track._Event('product', 'test');Product.lisen(1234, 21, 4343); return false;"
>>> s.split("lisen(")[-1].split(")")[0].split(",")
['1234', ' 21', ' 4343']
謝謝這就是我想做的一切 – nabizan 2010-10-06 18:04:07