PHP我要用count统计文本里的单词数的总数

学习 时间:2026-03-30 22:28:09 阅读:6332
PHP我要用count统计文本里的单词数的总数比如:$parrten = "/[a-zA-Z]+/";$str ="中英文chinese english混合 this is a test这是一个测试";preg_match_all($parrten,$str,$arr);echo count($arr);为什么结果得出是1,我要的结果是6.

最佳回答

玩命的草莓

大方的冥王星

2026-03-30 22:28:09

preg_match_all得到的是一个二维数组,你可以去看一下php手册,他还有一个可选参数,默认时PREG_PATTERN_ORDER,这样得到的二维数组$arr,第一个是匹配的字符串,第二个是匹配第一个括号的字符串,后面依次类推还可以设置为PREG_SET_ORDER,这样他得到的二维数组是,第一个是匹配的第一个字符串,第二个是匹配的第二个字符串,以此类推所以你这题不加后面那个参数的话就是打印count($arr[0]),或者加参数PREG_SET_ORDER,打印出来就是6了。$parrten = "/[a-zA-Z]+/";$str ="中英文chinese english混合 this is a test这是一个测试";preg_match_all($parrten,$str,$arr,PREG_SET_ORDER);print_r($arr);echo  count($arr);

最新回答共有2条回答

  • 慈祥的白云
    回复
    2026-03-30 22:28:09

    preg_match_all得到的是一个二维数组,你可以去看一下php手册,他还有一个可选参数,默认时PREG_PATTERN_ORDER,这样得到的二维数组$arr,第一个是匹配的字符串,第二个是匹配第一个括号的字符串,后面依次类推还可以设置为PREG_SET_ORDER,这样他得到的二维数组是,第一个是匹配的第一个字符串,第二个是匹配的第二个字符串,以此类推所以你这题不加后面那个参数的话就是打印count($arr[0]),或者加参数PREG_SET_ORDER,打印出来就是6了。$parrten = "/[a-zA-Z]+/";$str ="中英文chinese english混合 this is a test这是一个测试";preg_match_all($parrten,$str,$arr,PREG_SET_ORDER);print_r($arr);echo  count($arr);

上一篇 用一把钢尺和一把塑料尺分别写出如何探究音调,响度,音色

下一篇 为什么湿地能调蓄洪水