我有一个字符串,其中包含用逗号分隔的值。不用说,这可以通过 $strings = explode(',',$fullstring);
来完成。
现在,我需要将用户提交的值与该值进行比较,看看它“有多相等”。理想情况下,我想检查最多一个字母/符号/数字/...不相等。例如,如果硬编码字符串是“table”:
- 'tabl' 为真
- 'tablz' 为真
- 'tab' 为假
如果你明白我的意思。当然,字符串也可以包含空格、撇号、数值。我真的不知道我应该如何开始。我已经设置了一个过滤器来检查值是否相等(使用 if(in_array(strtolower($userValue),array_map('strtolower',$strings)))
),但是在else 子句我需要一些方法来检测我刚才解释的内容。
最佳答案
听起来您正在寻找的功能最好由 levenshtein 提供。
看看http://php.net/manual/en/function.levenshtein.php示例和如何使用它的说明。
关于PHP查看有多少个字符相等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17011406/