我有字符串:
$one = 'foo bar 4 baz (5 qux quux)'; $two = 'bar baz 2 bar'; $three = 'qux bar 12 quux (3 foo)'; $four = 'foo baz 3 bar (13 quux foo)';
如何找到这些字符串中的数字?
也许与功能:
function numbers($string){ // ??? $first = ?; $second = ?; }
例如:
function numbers($one){ // ??? $first = 4; $second = 5; } function numbers($two){ // ??? $first = 2; $second = NULL; }
最好的方法可能是正则表达式,但是如何在示例中使用它呢?也许没有正则表达式?
您可以为此使用正则表达式。该\d 转义序列将匹配的主题字符串中的所有数字。
\d
<?php function get_numerics ($str) { preg_match_all('/\d+/', $str, $matches); return $matches[0]; } $one = 'foo bar 4 baz (5 qux quux)'; $two = 'bar baz 2 bar'; $three = 'qux bar 12 quux (3 foo)'; $four = 'foo baz 3 bar (13 quux foo)'; print_r(get_numerics($one)); print_r(get_numerics($two)); print_r(get_numerics($three)); print_r(get_numerics($four));