【问题标题】:How to extract key and value from using preg_match_all?如何从使用 preg_match_all 中提取键和值?
【发布时间】:2011-05-07 16:13:42
【问题描述】:

我有一个包含如下语言变量的 php 文件:

define('YES', 'Yes');
define('NO', 'No');
define('HOME', 'home');
define('UNKNOWN', 'Unknown');
define('YEARS', 'years');
define('DAYS', 'days');
define('LOADING', ' Long text ...
...end of text');

我需要解析它,提取键和值以供进一步使用。 这种情况下的正则表达式模式是什么?

【问题讨论】:

    标签: php regex preg-match-all


    【解决方案1】:
    <?PHP
    $STR = "define('YES', 'Yes');
    define('NO', 'No');
    define('HOME', 'home');
    define('UNKNOWN', 'Unknown');
    define('YEARS', 'years');
    define('DAYS', 'days');
    define('LOADING', ' Long text ...
    ...end of text');";
    
    if( $i = preg_match_all( "/define\(\s*'([^']+)'\,\s*'([^']+)'\);/si" , $STR , $m ) )
    {
        print_r( $m );
    }
    ?>
    

    【讨论】:

      【解决方案2】:

      如果您想获取所有已定义的常量,请查看此函数 get_defined_constants

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-11-24
        • 1970-01-01
        • 2012-05-27
        • 2013-02-25
        • 2016-08-08
        相关资源
        最近更新 更多