我查看了类似的问题和答案,但无法解决我的问题。
我有一个字符串,如下所示:
ecc, ecc, .....thisIsUnique("92781227-7e7e-4768-8ee3-4e1615bddf3c", ecc, ecc.......
在没有一些唯一文本之前和之后可能会很长。
我需要的是将92781227-7e7e-4768-8ee3-4e1615bddf3c
代码作为字符串。所以我正在寻找一些听起来像:
当您发现thisIsUnique
时,请在找到第一个("
字符后阅读代码并继续阅读,直至找到第一个",
个字符。
不幸的是我不熟悉正则表达式,但也许有不同的方法来解决问题
感谢所有
答案 0 :(得分:2)
有一些网站你应该阅读正则表达式是什么。 https://regexone.com/和Learning Regular Expressions使用这样的网站来测试您尝试过的内容:https://regex101.com/但是为了让您开始,这完全按照您粘贴的内容运行:
import re
text = 'ecc, ecc, .....thisIsUnique("92781227-7e7e-4768-8ee3-4e1615bddf3c", ecc, ecc.......'
match = re.search('thisIsUnique\("([^"]+)', text)
print (match.group(1))
结果:
92781227-7e7e-4768-8ee3-4e1615bddf3c
答案 1 :(得分:1)
使用re.search
:
In [991]: text = 'ecc, ecc, .....thisIsUnique("92781227-7e7e-4768-8ee3-4e1615bddf3c", ecc, ecc.......'
In [992]: re.search('(?<=thisIsUnique\(")(.*?)"', text).group(1)
Out[992]: '92781227-7e7e-4768-8ee3-4e1615bddf3c'
'(?<=thisIsUnique\(")(.*?)"'
采用后视。
补充阅读
Regex HOWTO - 开始使用教程
其他教程网站 - TutorialsPoint