我需要使用正则表达式匹配表达式来查找文件名的一部分。
例如文件名 ABC01-001-M-001_0.dwg
我需要匹配下划线后面的第一个数字(这是图形文件名的修订号)
在这种情况下,它将与 0
匹配有人可以告诉正则表达式吗?
非常感谢。
答案 0 :(得分:0)
我认为这应该很简单。
_(\d)
在线演示https://regex101.com/r/kH1nE2/1
如果您需要更多数字,可以使用以下
_(\d+)
注意" +"它将匹配下划线后的1位或更多位数
答案 1 :(得分:0)
在这种情况下,甚至不需要正则表达式。
$n = "ABC01-001-M-001_0.dwg";
Echo intval(explode("_", $n)[1]); // 0
看来你正在寻找一个javascript解决方案?
var n = "ABC01-001-M-001_0.dwg";
var int = parseInt(n.split("_")[1]);
不确定它是否真的有效,因为我不是在用javascript编写,但^^是我可以谷歌的功能。
也许是有效的,也许不是。
似乎工作:-)
https://jsfiddle.net/w9x7d40f/
答案 2 :(得分:0)
pushpraj 答案几乎是正确的。我认为你不想看到下划线。
所以(?<=_)(\d+)
是正确的选择。 (?<=_)
表示,下划线必须位于您想要的模式前面,但不包括在内。