PHP 程序:查找字符串中的重复字符


2022 年 2 月 15 日, Learn eTutorial
2838

字符串中的重复字符是什么意思?

该程序用于查找输入字符串中重复出现的字符。例如,如果输入字符串是 'Hello World',那么重复字符将是 'l''o'

如何使用 PHP 查找字符串中的重复字符?

在此程序中,我们使用静态字符串并将其分配给变量 **string**。然后我们必须使用内置函数 `strtolower()` 将字符串转换为小写,并找到字符串的长度并将其分配给变量 **size**。之后,将值 **0** 分配给变量 **i**,并执行操作,直到条件 **'i < size'** 变为假,并在每次迭代中增加变量 **i** 的值。首先将值 **1** 分配给变量 **count**,然后将值 **'i + 1'** 分配给变量 **j**,并执行操作,直到条件 **'j < size'** 变为假,并在每次迭代中增加变量 **j** 的值。首先检查条件 **'string[i] == string[j]'** 和 **'string[i] != "" '**,如果两者都为真,则将变量 **count** 的值增加 **1**,并将值 **0** 分配给变量 **string[j]** 以避免重复。最后检查条件 **'count > 1'** 和 **'string[i] != 0'**,如果为真,则打印 **string[i]** 的值。

算法

步骤 1: 将字符串分配给变量 **string**

步骤 2: 将变量 **string** 中的字符串转换为小写并分配给变量 **string**

步骤 3: 将变量 string 的长度分配给变量 **size**

步骤 4: 将值 **0** 分配给变量 **i**,并执行子步骤,直到条件 **'i < size'** 变为假,并在每次迭代中增加变量 **i** 的值

        (i) 将值 **1** 分配给变量 **count**

        (ii) 将值 **'i + 1'** 分配给变量 **j**,并执行子步骤,直到条件 **'j < size'** 变为假,并在每次迭代中增加变量 **j** 的值

            (a) 检查条件 **'string[i] == string[j]'** 和 **'string[i] != "" '**,如果两者都为真,则将变量 count 的值增加 **1**,并将值 **0** 分配给变量 **string[j]** 以避免重复

        (iii) 检查条件 **'count > 1'** 和 **'string[i] != 0'**,如果为真,则打印 **string[i]** 的值

PHP 源代码

                                          <?php
$string = "learnetutorials.com";
$string = strtolower($string);
$size = strlen($string);
echo "The entered string is : $string \n";
echo "The duplicate characters in the string are: \n";
for ($i = 0; $i < $size; $i++) {
    $count = 1;
    for ($j = $i + 1; $j < $size; $j++) {
        if ($string[$i] == $string[$j] && $string[$i] != ' ') {
            $count++;
            $string[$j] = '0';
        }
    }
    if ($count > 1 && $string[$i] != '0') {
        echo "$string[$i] \n";
    }
}
?>
                                      

输出

The entered string is : learnetutorials.com
The duplicate characters in the string are:
l
e
a
r
t
o