与这个问题类似,但差异足够微妙,我仍然需要一些帮助。
目前我有:
'(.*)\[(\d+\-\d+)\]'
作为我的正则表达式,它匹配任意数量的字符,后跟方括号 [],其中包含用破折号分隔的两位小数。我的问题是,我希望它也只匹配方括号之间的一个十进制数字,甚至方括号之间可能没有任何内容。所以:
word[1-5] = match
word[5] = match
word[] = match (not essential)
并确保
word[-5] = no match
谁能指出我下一步的方向。我目前发现正则表达式有点像猜谜游戏,尽管我想和它们一起变得更好。