gpt4 book ai didi

java - 如何使用正则表达式抓取子串

转载 作者:行者123 更新时间:2023-11-30 08:09:04 24 4
gpt4 key购买 nike

我有以下字符串

{  "access_token": "1234-1234-1234-1234-1234",  "expires_in": 9998,  "refresh_token": "abc-abc-abc-1234",  "token_type": "test"}

我只想获取 access_token 值 (1234-1234-1234-1234-1234)。我试过像这样创建一个子字符串,它成功了

String s2 = result.substring(20,57);

我遇到的问题是“access_token”并不总是列在字符串的第一位,而且值的长度也不总是相同。有没有一种方法可以确保始终使用正则表达式获取此值?

我没有太多地使用正则表达式,所以这就是我被困的地方。我尝试了下面的方法,但它选择的太多了。

(?i)"access_token":\s\S(.*)",

最佳答案

你就快完成了,只需通过捕获组获取 access_token 旁边的数据即可。

Matcher m = Pattern.compile("(?i)\"access_token\":\s*\"([^\"]*)\"").matcher(s);
if(m.find()) {
System.out.println(m.group(1));
}

DEMO

关于java - 如何使用正则表达式抓取子串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32753961/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com