代码之家  ›  专栏  ›  技术社区  ›  Maurice69

如何使用preg_split()而不是split()

  •  0
  • Maurice69  · 技术社区  · 9 年前

    我试图替换网站中的split()函数,所以我找到了preg\u split()来使用。首先必须了解split()函数是如何工作的,所以我在php上查看了这个示例。网站:

    <?php
    // Delimiters may be slash, dot, or hyphen
    $date = "04-30/1973";
    list($month, $day, $year) = split('[/.-]', $date);
    echo "Month: $month; Day: $day; Year: $year<br />\n";
    ?>
    

    输出如预期: 月份:04;日期:30;年份:1973年

    所以我觉得这很简单,只要把它改成:

    <?php
    // Delimiters may be slash, dot, or hyphen
    $date = "04-30/1973";
    list($month, $day, $year) = preg_split('[/.-]', $date);
    echo "Month: $month; Day: $day; Year: $year<br />\n";
    ?>
    

    输出: 月份:1973年4月30日;日期:;年份:

    1 回复  |  直到 9 年前
        1
  •  2
  •   u_mulder    9 年前

    只需添加一些符号来定义正则表达式的开始/结束。它可能是 ~

    $date = "04-30/1973";
    list($month, $day, $year) = preg_split('~[/.-]~', $date);
    echo "Month: $month; Day: $day; Year: $year<br />\n";
    

    使现代化

    如果您的代码与 / 带反斜杠:

    list($month, $day, $year) = preg_split('/[\/.-]/', $date);
    
    推荐文章