这是一个我希望在
上做正则表达式的示例字符串101-nocola_conte_-_fuoco_fatuo_(koop_remix)
“101”中的第一个数字是光盘编号,接下来的2个数字是曲目编号。如何匹配曲目编号并忽略光盘编号(第一个数字)?
答案 0 :(得分:3)
像
这样的东西/^\d(\d\d)/
将匹配字符串开头的一位数字,然后捕获以下两位数字
答案 1 :(得分:1)
^\d(\d\d)
\
前面可能需要(
,具体取决于您打算运行正则表达式的环境(如vi(1)
)。
答案 2 :(得分:1)
你的意思是你不介意磁盘号是什么,但你想匹配,比如跟踪号码01?
在perl中,你会像这样匹配:“^ [0-9] 01. *”
或者更简单地说“^ .01。*” - 这意味着你甚至不介意第一个字符不是数字。
答案 3 :(得分:0)
哪种编程语言?对于shell,使用egrep的东西可以完成这项工作:
echo '101-nocola_conte_-_fuoco_fatuo_(koop_remix)' | egrep -o '^[0-9]{3}' | egrep -o '[0-9]{2}$'