PHP-如何获取第三个空格字符之前的所有字符串

我有一个像这样的字符串:

$text = "你好,我只是在尝试一些东西" ;

我需要在第三个空格字符之前剪切字符串,最终结果是:“你好,我只是” 。

到目前为止我发现的只是如何在特定字符第一次出现之前进行剪切。


慕无忌1623718
浏览 149回答 2
2回答

炎炎设计

我会使用爆炸来按空格分割,仅选择前三个(或更少)元素,然后爆炸来重新组装我想要的元素。$text = "Hello, I'm just trying some stuff";$words = explode(' ', $text, 4);$first_three = array_slice($words, 0, 3);$output = implode(' ', $first_three);请注意,将最后一个限制参数添加到爆炸函数将防止它在非常大的字符串的情况下过于昂贵。字符串的其余部分将被放入第四个即最后一个元素中。

30秒到达战场

好吧,你可以循环并维护一个空间的计数。如果计数达到 0,则该索引就是您substr可以调用的函数的最终限制。这也可以处理您指定的计数大于实际空间本身的情况。<?php$str = "Hello, I'm just trying some stuff";$length = strlen($str);$count = 3;$index = $length;for($i = 0; $i < $length; ++$i){&nbsp; &nbsp; if($str[$i] == ' '){&nbsp; &nbsp; &nbsp; &nbsp; $count--;&nbsp; &nbsp; &nbsp; &nbsp; if($count == 0){&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $index = $i;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; break;&nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; }}echo substr($str, 0, $index);
打开App,查看更多内容
随时随地看视频慕课网APP