繁体   English   中英

简化PHP代码和正则表达式

[英]Simplify PHP code and Regex

我可以使用一些帮助来简化以下包含正则表达式语句的代码。 我只是试图从包含在较大文本中的所有可能子字符串中获取整数,然后将这些整数推入数组。 我知道我不必使用split,但是我忘记了如何使用正则表达式来做到这一点。

    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_split ,但是您可以通过修改当前模式来对其进行改进:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM