牛牛在线工具

preg_match_all()

收录 8868 个 PHP 函数,含用途说明与用法示例。

preg_match_all()

在字符串中搜索匹配正则表达式的所有结果,并将结果保存在一个数组中

函数名称:preg_match_all() 适用版本:PHP 4、PHP 5、PHP 7 函数描述:preg_match_all() 函数在字符串中搜索匹配正则表达式的所有结果,并将结果保存在一个数组中。 用法: preg_match_all(string $pattern, string $subject, array &$matches, int $flags = PREG_PATTERN_ORDER, int $offset = 0): int|false 参数: $pattern:需要匹配的正则表达式。 $subject:需要搜索的字符串。 $matches:用于存储匹配结果的数组。函数执行完毕后,$matches[0] 将包含完整的模式匹配结果,$matches[1] 将包含第一个捕获子组的匹配结果,以此类推。 $flags(可选):用于指定匹配模式的标志,如 PREG_PATTERN_ORDER(默认值,按模式排序)或 PREG_SET_ORDER(按结果集排序)。 $offset(可选):用于指定开始搜索的偏移量。 返回值: 如果匹配到至少一个结果,返回匹配到的次数(整数)。 如果没有匹配到结果,返回 0。 如果发生错误,返回 false。 示例: $pattern = '/[0-9]+/'; $subject = 'There are 123 apples and 456 oranges.'; $matches = array(); if (preg_match_all($pattern, $subject, $matches)) { echo "匹配到的次数:" . count($matches[0]) . "<br>"; echo "匹配到的结果:" . implode(", ", $matches[0]); } else { echo "没有匹配到结果。"; } 输出: 匹配到的次数:2 匹配到的结果:123, 456 在以上示例中,我们使用正则表达式 /[0-9]+/ 来匹配字符串中的所有数字。函数执行后,将匹配到的次数和结果输出到浏览器。