[英]Regex to match number end of file path string
我有以下文件名,并希望提取"_R"
之后的数字:
我已经成功使用了正则表达式:
_R_?(\d+)\.txt$
现在,我正在寻求使其适应以下变体:
我试过了
_R_?(\d+)_?\d+?\.txt$
这似乎适用于后面的示例,但与第一个示例不同。
谢谢。
_R_?(\d+)(_\d+)?.txt$
您遇到的问题是\\d+?
使重复变得懒惰,而不是使其成为可选。 换句话说,它仍在尝试匹配至少一位数字,只是它正在试图匹配最少的数字(而不是最大的数字)以进行匹配。
(?:)
:
_R_?(\d+)(?:_\d+)?.txt$
编辑:缺少下划线
由于\\ d不仅限于0-9位数字: https : _R_?([0-9]+)(?:_[0-9]+)?\\.txt$
,我将使用: _R_?([0-9]+)(?:_[0-9]+)?\\.txt$
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.