码迷,mamicode.com
首页 > 其他好文 > 详细

递归方式解析出字符串中的@某人

时间:2017-07-26 01:43:08      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:php   style   递归   func   字符   array   需要   方式   substr   

<?php

$userList = [];
/**
 * 用递归的方式来查找字符串中的 @用户名
 * 用法:@用户名之后需要加空格隔断,才能检测到
 * @param $content
 */
function fetchAt($content)
{
    global $userList;
    $afterAt = strstr($content, ‘@‘); //@符号之后
    if ($afterAt) {
        $username = strstr($afterAt, ‘ ‘, true); //用户名
        if ($username) {
            array_push($userList, mb_substr($username, 1));
            $rest = strstr($afterAt, ‘ ‘); //用户名之后的部分
            fetchAt($rest);
        } else {
            array_push($userList, mb_substr($afterAt, 1));
        }
    }
}

$content = ‘最近还好吗?@赵兴亚 ,@周星驰 好久没联系@林青霞‘;
fetchAt($content);
print_r($userList);

输出:Array ( [0] => 赵兴亚 [1] => 周星驰 [2] => 林青霞 )

递归方式解析出字符串中的@某人

标签:php   style   递归   func   字符   array   需要   方式   substr   

原文地址:http://www.cnblogs.com/xingyazhao/p/7237101.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!