问个正则表达式意思
非贪婪模式
/(.*?).json/
当该字符紧跟在任何一个其他限制符 (*, +, ?, {n}, {n,}, {n,m}) 后面时,匹配模式是非贪婪的。非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串。例如,对于字符串 "oooo",'o+?' 将匹配单个 "o",而 'o+' 将匹配所有 'o'。
那个这个怎么解释(.*?)
[解决办法]
System.out.println("abc.json.json".matches("(.*?).json"));//true Pattern p = Pattern.compile("(.*?).json"); Matcher m = p.matcher("abc.json.json"); if(m.find()){ System.out.print(m.group());//abc.json }