如何使用正则表达式提取特定字符串后面的数字
问题描述:
例如,在下面的字符串中“var jsTimeSharingData={pages:13,data:[”,将pages:后面的13提取出来,正则表达式如何写。我是这么写的\"\'pages:(\\d+)\'\",结果得到pages:13,而不是13。如何写才能只取得数字?
网友观点:
你用的什么语言,比如java 你的代码 匹配之后 ,group(0)是 pages:13 group(1)是13
零宽断言
了解一下:
https://www.cnblogs.com/macq/p/6597366.html
你的问题的解答:
1 2 |
(?<=pages\\:)\\d+ |
1 2 3 4 5 6 7 8 9 10 |
String phoneString = \\\"哈哈,13888889999\\\"; // 提取数字 // 1 Pattern pattern = Pattern.compile(\\\"[^0-9]\\\"); Matcher matcher = pattern.matcher(phoneString); String all = matcher.replaceAll(\\\"\\\"); System.out.println(\\\"phone:\\\" + all); // 2 System.out.println( Pattern.compile(\\\"[^0-9]\\\").matcher(phoneString).replaceAll(\\\"\\\"));; |
var str = \'haj123sdk54hask33dkhalsd879\';
function findNum(str){
return str.match(/\\d+/g);
}
alert( findNum(str) ); //[123,54,33,879]
望采纳。
(?!pages:)\\d+
(\\d+)
你可以去这个网站测试一下你的正则,我感觉蛮好用 http://tool.oschina.net/regex/# 正则测试工具,不知道你用的什么语言,python可以
如果你的值直接是对象,可以用 对象.属性 的方式获取。不需要也不能用正则表达式
1 2 3 |
var jsTimeSharingData={pages:13,data:[]} alert(jsTimeSharingData.pages); |
如果你的值是标准的json格式字符串,可以先解析为对象,也不需要用正则表达式。
1 2 3 |
var jsTimeSharingData=\'{\\\"pages\\\":13,\\\"data\\\":[]}\' alert(JSON.parse(jsTimeSharingData).pages); |
如果一定要用正则表达式。js中可以用下面方法。
1 2 3 |
var jsTimeSharingData=\'{pages:13,data:[]}\' alert(jsTimeSharingData.match(/pages:(\\d+)/)[1]); |
如果要只取得数字。只有用后向断言,但是js中不支持,其它语言可以用:
1 2 |
(?<=pages\\:)\\d+ |
我是在delphi中使用RegExpr。xingjianfengaa的答案正解,解决了我的问题,但不知道为何不可在第一组得到。谢谢caozhy、qq_39196400 、jslang,使用(?<=pages:)\\d+或 (?!pages:)\\d+,会出现exception错误,可能是使用的解释器不同。 同样感谢weixin_41312918、zhuzuyumao,但实例字符串中后面的数字还有很多,单用d+不行(误导你们了)。
使用\\d+
var jsTimeSharingData=\\\"{pages:13,data:[\\\";
function getNumber(str){
return str.match(/\\d+/g);
}
console.log(getNumber(jsTimeSharingData));
1 2 |
如何用正则表达式提取每个符合正则表达的子串?
输入一行字符 有空格 有字母 有数学 设计好了正则,用的是boost的库,用哪个函数能提取出来每个符合正则的子串?
1. 带 [亲测] 说明源码已经被站长亲测过!
2. 下载后的源码请在24小时内删除,仅供学习用途!
3. 分享目的仅供大家学习和交流,请不要用于商业用途!
4. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
5. 本站所有资源来源于站长上传和网络,如有侵权请邮件联系站长!
6. 没带 [亲测] 代表站长时间紧促,站长会保持每天更新 [亲测] 源码 !
7. 盗版ripro用户购买ripro美化无担保,若设置不成功/不生效我们不支持退款!
8. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
9. 如果你也有好源码或者教程,可以到审核区发布,分享有金币奖励和额外收入!
10.如果您购买了某个产品,而我们还没来得及更新,请联系站长或留言催更,谢谢理解 !
GG资源网 » 如何使用正则表达式提取特定字符串后面的数字