求一个正则问题

小白晒太阳 2015-11-27 05:34:17
var data4 = eval('('+'[{"device":["28.0","72.0"]}]'+')');

我想获取里面的28.0和72.0该如何获取

  Pattern pattern = Pattern.compile("var data4 = eval('('+'[{\"device\":[\"(.*?)\",\"(.*?)\"]}]'+')');");
Matcher matcher = pattern.matcher(html);
while (matcher.find()) {
System.out.println(matcher.group(1));
System.out.println(matcher.group(2));
}


我的代码这么写的,取不到结果。。求大神指点。。
...全文
126 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
rickylin86 2015-11-27
  • 打赏
  • 举报
回复

import java.util.regex.*;

public class Test{
	public static void main(String[] args){
		String content = "var data4 = eval('('+'[{\"device\":[\"28.0\",\"72.0\"]}]'+')');";
		String regex = "\"(\\d+(\\.\\d)?)\"";
		Pattern pattern = Pattern.compile(regex);
		Matcher matcher = pattern.matcher(content);
		while(matcher.find()){
			System.out.println(matcher.group(1));
		}
	}
}
若鱼1919 2015-11-27
  • 打赏
  • 举报
回复

Pattern pattern = Pattern.compile("var data4 = eval\\('\\('\\+'\\[\\{\"device\":\\[\"(.*?)\",\"(.*?)\"\\]\\}\\]'\\+'\\)'\\);");

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧