如何从字符串中的特定模式获取数字?

时间:2013-07-17 00:58:14

标签: php regex

字符串是:

I really love apples. gallery="67,65,60,49,45" Bananas are cool too.

我只想要67(序列中的第一个整数,无论​​它是什么)。我似乎无法匹敌它。我的正则表达不是很好,我已经尝试使用谷歌搜索,但我还没能把正确的角色放在一起。

感谢任何帮助。

3 个答案:

答案 0 :(得分:2)

你可能正在寻找这样的东西:

^\d+

^是一个匹配字符串开头的锚点。这样,您将匹配“字符串开头的任意长度”。

修改

对于您的新要求,请使用

(?<=gallery=")\d+

这将匹配您想要的数字。

答案 1 :(得分:2)

你不需要正则表达式。您可以使用explode()用分隔符逗号分隔字符串,然后只需打印它。

$gallery="67,65,60,49,45";
$var = explode(',', $gallery);
echo $var[0]; //outputs 67

演示:http://codepad.org/aCWySInp

希望这有帮助!

答案 2 :(得分:1)

$gallery = "67,65,60,49,45"; 
echo explode(',', $gallery)[0]; // will echo '67'