PHP REGEX将值与数组匹配

时间:2014-01-26 17:23:02

标签: php regex

例如我有这个字符串。 #345-6574#56-2432#776-246554#

我想在锐利之间获取所有值。

我试过这个但没有工作

preg_match_all('/^#[\d]+-[\d]+#$/',$string,$output);

2 个答案:

答案 0 :(得分:2)

正则表达式是不必要的:

$output = array_filter(explode('#', $string));

See it in action

答案 1 :(得分:1)

这样做:

preg_match_all('/#(\d+\-\d+)#/',$string,$output);

如果你想确保#位于两端,你也可以使用lookahead和lookbehind。

preg_match_all('/(?<=#)(\d+\-\d+)(?=#)/',$string,$output);