Python Regex获取两个子字符串之间的字符串

发布于 2021-01-29 16:34:39

首先,我知道这 似乎 是一个重复的问题,但是,我找不到解决我问题的可行方法。

我有看起来像以下的字符串:

string = "api('randomkey123xyz987', 'key', 'text')"

我需要提取 randomkey123xyz987 ,它将始终在 api(’‘之间,

我打算为此使用正则表达式,但是,似乎有些麻烦。

这是我取得的唯一进步:

import re
string = "api('randomkey123xyz987', 'key', 'text')"
match = re.findall("\((.*?)\)", string)[0]
print match

以下代码返回 “ randomkey123xyz987”,“ key”,“ text”

我尝试使用 [^’] ,但是我的猜测是我没有正确地将其插入re.findall函数。

我尝试的一切都失败了。


更新:我当前的解决方法是使用 [2:-4] ,但是我仍然想避免使用 match [2:-4]

关注者
0
被浏览
180
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    如果字符串仅包含一个实例,请re.search()改用:

    >>> import re
    >>> s = "api('randomkey123xyz987', 'key', 'text')"
    >>> match = re.search(r"api\('([^']*)'", s).group(1)
    >>> print match
    randomkey123xyz987
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看