如果有两个值,则捕获 2,如果不是,则使用正则表达式捕获第一个值
If there are two values, catch the 2, if isn't, catch the first with regex
我正在打破我的头来寻找解决方案。
我需要在字符串中捕获一些特定值。此字符串在处理之前具有以下格式:
5593 DSR Sobreaviso [ 032] 0,00 54,38
01 SRM Sim [ 01] 10,00
处理后,字符串将如下所示:
5593 DSR Sobreaviso [ 032] 0,00 54,38 01 SRM Sim [ 01] 10,00
所以.. 我需要捕获最正确的值,即总数,如果第一个值存在,我很难弄清楚如何提取第二个值,如果第二个值不存在,则提取第一个值。
我正在尝试这样做:
/.*?'s(?:5593)'s.*?'s(['d.,]+)]'s(['d.,]+)/
我需要显式传递最正确的值,因为这块位于一个巨大的文本(超过 50k 字)中。
查看此示例:http://regexr.com/3cj6e
当我通过 5593 时,正则表达式将捕获 0,00,但我需要 54,38.. 当我传递 01 时,正则表达式将捕获正确的值。
谢谢。
我假设你现在已经有了答案,但如果没有,这有帮助吗?
/'b(?:5593)'s+['w ]+'s+'[[ 'd]+']'s+(?:['d]+[.,]['d]+'s+)?(['d]+[.,]['d]+)/
尝试使用
/['d.,]+$/
http://regexr.com/3cj6k
它只是查找行上的最后一个数字。
编辑:
从您的评论中,我对这个问题有了更好的理解。
那么像这样的事情怎么样:
/(['d.,]+)'s(['d.,]+)'s[a-z]/gi
这是对jsfiddle的不作为:https://jsfiddle.net/zzvur713/3/
相关文章:
- 如果类不是一个选项,如何在使用 jQuery 时控制(避免)嵌套 html 元素的样式
- 看起来第一个console.log是'It’不太对
- 仅将 CSS 规则应用于
中的第一个 ,而不分配类/ID - 我的设备后退按钮工作不正常,它转到第一个html,但返回到第二个html
- 如果我传递一个参数,则不会调用javascript函数
- 第一个jQuery.animate()不工作
- XMLHttpRequest,使用多个1不起作用,只是第一个.需要使用多个
- 未捕获的类型错误:document.title 不是一个函数,第 31 行
- 如果在第一个 jsp 页面设置了刷新参数,则会刷新所有 jsp 页面
- 如果第二个 html 元素位于第一个 html 元素上方,如何移动该元素
- 数据表删除按钮在其他页面上不起作用,除了第一个
- JS深度比较2个对象并删除在第二个对象中找到的项目,而不是第一个
- 检查一个数字是否可以被另一个数字整除 如果不能,则使其在 Javascript 中可整除
- 为什么我添加的第二个jQuery代码部分/新的CSS部分导致第一个jQuery代码在我的页面上不起作用
- 我正在尝试遍历 id 数组,如果不存在 id,则插入一个 mongodb 文档.我怎样才能让他们坚持下去
- 如果我单击第一个product_widget,我如何使消失produst_name在第一个 product_widget
- 如果不在表单中填写一个字段,我的光标不应该移动到 javascript 验证中的下一个字段
- Casperjs:“TypeError: 'undefined' 不是一个函数”,如果在另一个文件中使用了 evalua
- 如果有两个值,则捕获 2,如果不是,则使用正则表达式捕获第一个值
- JS如果不是一个变量