我有$ input包含:
<a href="http://digitalocean.com/info/hello-23-kitty-show-1-d-zay-ya-9013294119" title="Hello Kitty (Show & Zay Ya" style="font-size:medium;" target="_blank" class="highlight-item">
我需要preg_match只有href url(9013294119)中的最后一位数字。这些数字有时会更长或更短,因为$ input中的URL会有所不同(但总的来说最少有4个字符)。
我尝试使用正则表达式,但没有运气,因为我的正则表达式经验非常有限:
preg_match('/^[0-9+]$/', $input, $output);
任何帮助?
答案 0 :(得分:2)
删除^
(以...开头)和$
(以...结尾)锚点,并使用量词和一些前瞻和后方。
/(?<=-)[0-9]{4,}(?=")/
{4,}
表示匹配上一个令牌,在本例中为[0-9]
,为4次或更多次。
如果您的字符串模式不一致,您可以使用href="[^"]+?([0-9]{4,})"
,第1组将包含您想要的内容。