$f = file('words.txt');$words = array();foreach ($f as $w) { $words[] = preg_quote(trim($w), '/');}$text = file_get_contents('text.txt'); $start = microtime(true);$reg = '/' . implode('|', $words) . '/s'; preg_match_all($reg, $text, $m); $result = array();$total = 0;foreach ($m[0] as $w) { if (!isset($result[$w])) { $result[$w] = 1; } else { $result[$w]++; } $total++;}$end = microtime(true);echo $end - $start, \n;echo $total, \n; print_r($result);
复制代码
php