如何通过PHP查找给定字符串中的第一个非重复字符

新的一周又开始啦~大家应该都知道关于PHP中字符串的操作是程序设计中比较关键也是最基础的部分,那么在后面的文章中会陆续给大家介绍关于字符串的基础操作,相信总有你能掌握到的技巧~

那么本文的主题则是“编写一个PHP程序来查找给定字符串中的第一个非重复字符”。

对于非重复字符,应该不必过多解释,比如字符串“adicvdda”,肉眼可见第一个非重复字符就是i,因为字符a和d都是重复的。

下面我们就给大家介绍怎么通过PHP来实现这个操作。

PHP代码如下:

<?php
function find_non_repeat($word) {
    $chr = null;
    for ($i = 0; $i <= strlen($word); $i++) {
        if (substr_count($word, substr($word, $i, 1)) == 1) {
            return substr($word, $i, 1);
        }
    }
}

echo find_non_repeat("Green")."<br>";
echo find_non_repeat("abcdea")."<br>";

输出结果是:

G
b

也就是说给定的字符串"Green"中第一个非重复字符是G,"abcdea"中第一个非重复字符是“b”。

在上述代码中我们主要通过for循环遍历出字符串中每个字符,然后进行比较。

PHP strlen()函数用于返回字符串的长度,返回值是若成功则返回字符串的长度,若字符串为空则返回 0。

PHP substr_count()函数用于计算子串在字符串中出现的次数,返回值是返回子串在字符串中出现的次数。

其语法是“substr_count(string,substring,start,length)”;

参数分别表示:

string必需,规定被检查的字符串。

substring必需,规定要搜索的字符串。

start可选,规定在字符串中何处开始搜索。

length可选,规定搜索的长度。

PHP substr()函数用于返回字符串的一部分,返回值是返回字符串的提取部分,若失败则返回 FALSE,或者返回一个空字符串。

最后给大家推荐最新最全面的《PHP视频教程》~快来学习吧!

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » 如何通过PHP查找给定字符串中的第一个非重复字符