Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/242.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
简化PHP代码和正则表达式_Php_Regex - Fatal编程技术网

简化PHP代码和正则表达式

简化PHP代码和正则表达式,php,regex,Php,Regex,我需要一些帮助来简化下面包含regex语句的代码。我只是想从大文本中包含的所有可能的子字符串中获取整数,然后将这些整数推送到数组中。我知道我不应该使用split,但我忘了如何使用regex preg_match_all('/bar:foo\(?[0-9]*\);/', $in , $tag); for ($i = 0; $i < count($tag[0]); $i++) { $parts = explode("(", $tag[0][$i]);

我需要一些帮助来简化下面包含regex语句的代码。我只是想从大文本中包含的所有可能的子字符串中获取整数,然后将这些整数推送到数组中。我知道我不应该使用split,但我忘了如何使用regex

    preg_match_all('/bar:foo\(?[0-9]*\);/', $in , $tag);
    for ($i = 0; $i < count($tag[0]); $i++) {
        $parts = explode("(", $tag[0][$i]);           
        $parts2 = explode(")", $parts[1]);
        array_push($myArr, $parts2[0]);
    }
preg\u match\u all(“/bar:foo\(?[0-9]*\);/”,$in,$tag);
对于($i=0;$i
实际上,您可能不需要使用
preg\u split
,但您可以通过修改当前模式来改进它:

$numbers = preg_match_all('/bar:foo\(?([0-9]*)\);/', $in , $matches) 
           ? array_map('intval', $matches[1])
           : array();

实际上,您可能不需要使用
preg_split
,但您已经可以通过修改当前模式来改进它:

$numbers = preg_match_all('/bar:foo\(?([0-9]*)\);/', $in , $matches) 
           ? array_map('intval', $matches[1])
           : array();