我有一个代码可以从单词列表中删除逗号并分隔所有单词。我尝试从结果中计算字符串中的单词数(也包含邮件地址和单词),但它返回00000而不是5。如何解决此问题。下面是我的代码
$input = "example@k.c, bar@h.c, baz@h.c., shibbyc, poopc.";
//-- handles it all in one pass
$output = preg_split('/(,)/', $input, -1, PREG_SPLIT_NO_EMPTY);
//-- just output
array_walk($output, function(&$item, $idx) {
echo substr_count($item,$idx);
// echo $idx . ': ' . $item . PHP_EOL;
});
答案 0 :(得分:2)
不需要正则表达式,只需使用爆炸
更少的记忆饥饿功能。
算上算了。
$input = "example@k.c, bar@h.c, baz@h.c., shibbyc, poopc.";
$arr = explode(",", $input);
Echo count($arr); //echo 5
答案 1 :(得分:0)
您可以使用count()
:
$output = preg_split('/(,)/', $input, -1, PREG_SPLIT_NO_EMPTY);
echo count($output); // 5