保罗
尝试提取数字之间的第一个匹配字符串:例如:
测试fa13.4提取此8488.9090testssffwwww
ajfafs-sss133.6 extractthis 887878.222testtest522252.9thismore
到目前为止,我有以下内容:
[\d](.*?)[\d]
但是,匹配项包括捕获组末尾的数字吗?任何建议表示赞赏。谢谢。
第四只鸟
如果要提取第一个匹配项,则可以从与^
任何除数字以外的所有字符的锚开始,\D*
然后再将数字与可选的小数部分匹配。
^\D*\d+(?:[.,]\d+)*(\D+)\d
^
字符串开始
\D*
匹配0+次除数字以外的任何字符
\d+(?:[.,]\d+)*
匹配1个以上的数字,并可以选择重复一个.
或,
和1个以上的数字
(\D+)
捕获组1,匹配除数字以外的任何字符的1+倍
\d
匹配数字
正则表达式演示
为防止跨越换行符边界:
^[^\d\n\r]*\d+(?:[,.]\d+)*([^\d\n\r]+)\d
正则表达式演示
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
编辑于
我来说两句