PHP 获取字符串的前 5 个单词的最佳方式是什么?

2022-08-30 22:33:21

获取字符串的前 5 个单词的最佳方法是什么?如何将字符串一分为二,使第一个子字符串具有原始字符串的前5个单词,而第二个子字符串构成原始字符串的其余部分


答案 1
$pieces = explode(" ", $inputstring);
$first_part = implode(" ", array_splice($pieces, 0, 5));
$other_part = implode(" ", array_splice($pieces, 5));

explode将原始字符串分解为单词数组,使您可以获取这些单词的某些范围,然后将这些范围组合成单个字符串。array_spliceimplode


答案 2

以下内容很大程度上取决于您对单词的定义,但它是另一个方向的点头,远离普通的-ing。explode

$phrase = "All the ancient classic fairy tales have always been scary and dark.";
echo implode(' ', array_slice(str_word_count($phrase, 2), 0, 5));

所有古代经典仙女


另一种选择,因为每个人都喜欢正则表达式,所以是这样的:

preg_match('/^(?>\S+\s*){1,5}/', $phrase, $match);
echo rtrim($match[0]);

推荐