<?php
$string = "sandesh commented on institue international institute of technology";
/* Use tab and newline as tokenizing characters as well */
$tok = strtok($string, " \n\t");
echo $tok
?>
上面的代码为我提供了输出sandesh。
但如果我希望输出“在国际技术学院评论”,那么我应该如何修改上述代码。
谢谢和问候 Sandesh
答案 0 :(得分:2)
<?php
$string = "sandesh commented on institue international institute of technology";
echo substr($string,strpos($string," ")+1);
文档
修改强>
我实际上需要第四个标记之后的字符串
<?php
$string = "sandesh commented on institue international institute of technology";
$str_array = explode(" ",$string);
$str_array = slice($str_array,4);
echo implode(" ",$str_array);
答案 1 :(得分:1)
因为您是基于空格进行标记,strtok
会为您提供第一个单词。下次你调用strtok时,你会得到第二个单词,等等。鉴于你拥有的字符串和你提供的标记,没有办法将字符串的其余部分作为单个标记。
答案 2 :(得分:1)
是否可以直接在第四个令牌后获取字符串, 没有进入循环。
这将在一次传递中获得第四个空格之后的字符串。
<?php
$string = "sandesh commented on institue international institute of technology";
preg_match('/(?:.*?\s){4}(.*)/', $string, $m);
$new_string = $m[1];
echo $new_string;
?>
输出
国际技术学院