php如何使用“自然”算法知道字符串的异同
时间:2021-08-14
来源:互联网
标签:
今天PHP爱好者给大家带来php如何使用“自然”算法知道字符串的异同的方法,上一篇文章中我们了解了查找字符串在另一字符串中最后一次出现位置的方法,有需要的请看《php如何知道字符串最后一回出现的位置》。这次我们向大家介绍使用“自然”算法知道字符串的异同,有需要的可以参考参考。希望对大家有所帮助。
在之前的文章中,我们介绍了比较字符串的方法,但是我们这次不一样啦,我们使用“自然”算法来比较字符串。如果有想知道使用普通算法比较字符串的,可以看完之前的文章《php函数之如何知道字符串的异同》哦。
我们来看看什么叫做“自然”排序算法。
实现了一个和人们通常对字母数字字符串进行排序的方法一样的排序算法并保持原有键/值的关联,这被称为“自然排序”。
好了,我们现在就来进入正题吧。
首先我们来看一个小例子。
<?php
echo strnatcasecmp("2Hello WORLD!","10Hello WORLD!");
echo "<br>";
echo strnatcasecmp("2hello world!","2aello world!");
echo "<br>";
echo strnatcasecmp("2hello world!","9hello WORLD!");
echo "<br>";
echo strnatcasecmp("2hello world!","2HELLO WORLD!");
?>
这个结果是
![1628144342710420.png 6U$ZCKBO]PAEH%EKG{HQI5M.png](https://images.phpfans.net/img/20210814/img_6117373e0e59630.png)
我们仔细看看这个例子啊,当我们除了前面数字其他都一模一样的时候,我们发现数字是-1,当我们数字一样,但是后面字母有所变化的时候,是1,而当数字一样,字母一样,大小写不一样的时候,发现为0.这都是什么原因呢?
带着这些疑问,我们去看看这个函数吧。
strnatcasecmp() 函数使用一种"自然"算法来比较两个字符串(不区分大小写)。
既然这样,那我们去看看这个函数的语法吧。
strnatcasecmp(要比较的第一个字符串,要比较的第二个字符串)
之前我们还在好奇的“0”,“-1”,“1”,你知道是什么意思吗?不卖关子了,其实这些是函数的返回值,用来说明第一个字符串与第二个字符串之间的关系的。
该函数返回:
0 - 如果两个字符串相等
<0 - 如果 string1 小于 string2
>0 - 如果 string1 大于 string2
其实用“自然”算法比较字符串的方法有两种,这次我们就介绍这种对大小写不敏感的,下一篇文章介绍一下对大小写敏感的。
以上就是php如何使用“自然”算法知道字符串的异同的详细内容,更多请关注php爱好者其它相关文章!
-
USB Host接口有什么用?USB Host和USB Device接口的区别 时间:2025-12-16 -
HDMI怎么区分1.4和2.0?HDMI1.4和2.0的区别 时间:2025-12-16 -
com.android.phone已停止运行是什么意思?怎么解决? 时间:2025-12-16 -
4mp摄像头是多少像素?4mp和1080p有什么区别? 时间:2025-12-16 -
电脑出现normal.dotm错误怎么办?解决方法是什么? 时间:2025-12-15 -
normal.dotm在哪个文件夹里 如何删除normal模板 时间:2025-12-15
今日更新
-
拷贝漫画繁体版下载-拷贝漫画繁体中文版安装入口
阅读:18
-
poki小游戏免费秒玩-官方入口网站链接
阅读:18
-
欧易跟单交易详解 新手如何快速上手跟单操作
阅读:18
-
poki小游戏免费秒玩直通入口-poki小游戏极速畅玩零等待入口
阅读:18
-
朋友梗是什么梗?揭秘网络爆火友情梗的出处和用法,让你秒懂年轻人社交黑话!
阅读:18
-
迅雷在线高清观看-迅雷影院免费流畅播放器
阅读:18
-
10个技巧教你挑选高盈利交易员跟单
阅读:18
-
哔咔漫画免费入口网页下载-哔咔漫画网页版一键极速获取
阅读:18
-
拼多多购物车入口在哪里-拼多多如何加入购物车合并付款
阅读:18
-
CET4准考证成绩官网快速查询入口-CET4准考证成绩精准模糊查询入口
阅读:18










