读书人

正则

发布时间: 2012-02-02 23:57:14 作者: rapoo

求助正则
"videoId":390286,"isNeedCaption":222,"areaId":6,"videoOrder":"1"
关于上面的字符串我只想获取到匹配成
"videoId":(.+?)"isNeedCaption":222,"areaId":6,"videoOrder":"(.+?)"
我只想获取到如上面所示(.+?)中的内容

因为"isNeedCaption":1,"areaId":6,这个字符是可变的
我现在的匹配方法是这样'"videoId":"(.+?)"[^"videoOrder"]+","videoOrder":"(.+?)"'
匹配出来的效果是:第一个字符串是"videoId":390286,"isNeedCaption":222,"areaId":6, 第二个字符串是"videoOrder":"1"
第一个字符串"isNeedCaption":222,"areaId":6,这一段多出来了


我希望的效果:怎么匹配才可以获取到第一个字符串"videoId":390286 第二个字符串"videoOrder":"1"(是)

怎么匹配才可以成功?
请教一下高手

[解决办法]
那就把2个\d?换成.*?,第一个因为有逗号,能隔开,第二个有后引号,也可以

C/C++ code
\"videoId\"\:(.*?),.*?videoOrder\"\:\"(.*?)\" 

读书人网 >perl python

热点推荐