我在 $text
中有以下文本:
$text = 'Hello world, lorem ipsum.
What?
Hello world, lorem ipsum what.
Excuse me!';
如果一行中的单词少于 3 个单词,那么我想完全删除该行。所以带有 What?
和 Excuse me!
的行应该从字符串中删除。
是否有正则表达式方法或我该如何处理?
最佳答案
我想到了这个。我倾向于尽可能避免使用正则表达式,因为正则表达式往往会减慢速度。
$str = 'Hello world, lorem ipsum.
What?
Hello world, lorem ipsum what.';
$new_str = explode("\n", $str);
foreach ($new_str as $keys => &$lines) {
$lines = trim($lines);
if (substr_count($lines, " ") < 2) {
unset($new_str[$keys]);
}
}
$new_str = implode("\n", $new_str);
print_r($new_str);
打印出来的是:
Hello world, lorem ipsum.
Hello world, lorem ipsum what.
关于php - 如果一行少于 x 个单词,则将其删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34533526/