鍍金池/ 問(wèn)答/Java/ java 正則表達(dá)式截取json字符串 測(cè)試工具上測(cè)試成功,實(shí)際使用匹配失敗

java 正則表達(dá)式截取json字符串 測(cè)試工具上測(cè)試成功,實(shí)際使用匹配失敗

首先我需要截取的是一個(gè)比較復(fù)雜的json字符串,要抓里面的幾個(gè)數(shù)據(jù)的值,所以我打算用正則來(lái)匹配。

圖片描述

以抓取上述的quatationNo為例:

clipboard.png

代碼:

String regex = "\"quotationNo\":\"(.*?)\",\"receiverInfo\"";
String target = Pattern.compile(regex).matcher(str).group(1);

測(cè)試結(jié)果

clipboard.png

問(wèn)題

Exception in thread "main" java.lang.IllegalStateException: No match found

測(cè)試成功,但是在代碼里面卻匹配錯(cuò)誤。問(wèn)題是在哪???

請(qǐng)指教。

先謝過(guò)。

回答
編輯回答
執(zhí)念

你還沒(méi)查找當(dāng)然獲取不到,要先調(diào)用find()

2017年9月20日 20:00
編輯回答
硬扛
 while(matcher.find()){
              System.out.println(matcher.group());
          }

試試

2018年5月5日 07:38