求正确的正则表达式

6lilu9 2017-02-21 03:43:45
一段html代码中的一段是这样的
  <label><input type="checkbox" name="checkbox" disabled="disabled" value="value" /> 被提取的字符(前面有空格,后面没有)</label>


我想把中间的汉字提出来,用了正则表达式:(?<=/>).*?((?=</),但显然不行。
,请高手指点
...全文
191 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 7 楼 jiajing1990_ 的回复:
特别想知道 是什么用途需要用到此方法来提取页面标签里的显示数据,html,innerHtml()这些没派上用场么
我也是这么觉得
jiajing1990_ 2017-02-22
  • 打赏
  • 举报
回复
特别想知道 是什么用途需要用到此方法来提取页面标签里的显示数据,html,innerHtml()这些没派上用场么
  • 打赏
  • 举报
回复
引用 5 楼 lengyeshuang 的回复:
[quote=引用 3 楼 LinBilin_ 的回复:] (?<=/>).*?(?=</) 这个正则表达式可以用,只是javaScript不支持(?<=)这个语法
我都是在editplus中测试的,难道editplus不支持javascript吗?[/quote] 你执行的时候也需要js的正则引擎吧,js的正则引擎不支持这种语法。跟editplus没关系
6lilu9 2017-02-21
  • 打赏
  • 举报
回复
引用 3 楼 LinBilin_ 的回复:
(?<=/>).*?(?=</) 这个正则表达式可以用,只是javaScript不支持(?<=)这个语法
我都是在editplus中测试的,难道editplus不支持javascript吗?
  • 打赏
  • 举报
回复

function getTxt(input){
		var pattern =new RegExp("<input[^\/>]+\/>([^<\/]*)<\/label>","g");
		var result;
		while((result=pattern.exec(input))!=null){
			document.write("匹配结果为:"+result[1]+"<br />");		
		}
	}
  • 打赏
  • 举报
回复
(?<=/>).*?(?=</) 这个正则表达式可以用,只是javaScript不支持(?<=)这个语法
WildMrZhang 2017-02-21
  • 打赏
  • 举报
回复
// 代码,js测试结果如下。
var t1 = '<label><input type="checkbox" name="checkbox" disabled="disabled" value="value" /> 测试</label>'; // 一个空格
var t2 = '<label><input type="checkbox" name="checkbox" disabled="disabled" value="value" />测试</label>'; // 没有空格
var t3 = '<label><input type="checkbox" name="checkbox" disabled="disabled" value="value" />测试 </label>'; // 后面一个空格
var t4 = '<label><input type="checkbox" name="checkbox" disabled="disabled" value="value" /> 测试 </label>'; // 前后都有空格
var regex = new RegExp(/<input.*\/>\s+\S*</);
console.log(regex.test(t1));
console.log(regex.test(t2));
console.log(regex.test(t3));
console.log(regex.test(t4));

var str = regex.exec(t1)[0];
var result = str.substring(str.indexOf('>')+1,str.lastIndexOf('<'));
console.log("提取结果:"+result);
爱睡觉的阿狸 2017-02-21
  • 打赏
  • 举报
回复
这种在网页中提取信息,直接手动用正则解析不太好,可以参考jsoup,先根据ID、class或者name找到页面元素,再提取相关信息。

81,092

社区成员

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

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