"),$str); ...","datePublished":"2025-03-03","dateModified":"2025-03-03","image":{"@type":"ImageObject","url":"https:\/\/www.dls6.com\/assets\/images\/logo_default.png"},"mainEntityOfPage":{"@type":"WebPage","@id":"https:\/\/www.dls6.com\/article\/228.html"},"@context":"https:\/\/schema.org","@type":"Article","inLanguage":"zh-CN","areaServed":"CN","provider":{"@type":"Organization","name":"丁老师软件","url":"https:\/\/www.dls6.com","logo":{"@type":"ImageObject","url":"https:\/\/www.dls6.com\/upload\/2025\/12\/20251220155938487.jpg","width":1186,"height":600}},"author":{"@type":"Organization","name":"丁老师软件","url":"https:\/\/www.dls6.com"},"publisher":{"@type":"Organization","name":"丁老师软件","logo":{"@type":"ImageObject","url":"https:\/\/www.dls6.com\/upload\/2025\/12\/20251220155938487.jpg","width":1186,"height":600}}}
首页 > 原创文章 > 软件开发 > 查看文章

php区分字符里面中文和英文的方法

所属分类:软件开发 来源: 丁老师原创 更新时间:2025-03-03 08:38 浏览: 2980 IP属地: 深圳

有个客户提出了一个需求,他的稿件经常包含有中英文混合内容,现在需要把中文和英文分离开来,即把中文单独取出来,把英文取出来,该怎么实现呢?
下边,丁老师用php的方法,来帮你实现。

$str="Hello 丁老师软件开发 How are you?";

$english=preg_replace(array("/[\p{Han}?]/u","/(\s)+/"),array("","$1"),$str);
$chinese=preg_replace(array("/[^\p{Han}?]/u","/(\s)+/"),array("","$1"),$str);

echo $english."\r\n".$chinese;

在本文中,可以看到,我是通过使用了正则表达式"[\p{Han}?]"来区分的中英文。
英文是通过正则表达式,排除了中文后的内容;
而中文,是通过正则表达式,只抓取中文的内容;

你学会了吗?

标签:

相关文章

怎么样合并一个或多个PDF文件?

经常有小伙伴问丁老师,说扫描出来的PDF图片,都是一个一个的,怎么样把他们合并成一个文件呢?我说你去下载一个PDF工具就好了呀,有某某PDF共阅读器、编辑器嘛。小伙伴说不行呀丁老师,因为网上的这些PDF工具有以下缺点:1.体积太大。动辄...

Nginx环境下php页面总是缓存刷新也不行...

nginx环境下php页面总是缓存刷新也不行的解决办法

FastAdmin 顶部navtab 刷新页...

在使用fastadmin的日常开发中,新增了一个订单模块order,在各项功能都开发完毕后,偶然发现这个页面每次一点刷新(浏览器刷新),顶部navtab就不显示"订单管理"4个字,图标也恢复成了默认的,在网上搜了相关...

微信H5支付开发方法

微信H5支付,就是在非微信客户端内调用微信客户端进行支付,比如在手机自带浏览器中选择微信支付,就会提示打开微信,在微信客户端内完成支付。之前这个功能是内部使用,只对京东等一些大型电商平台开放,小企业无法申请,但是近日微信开放了H5支付...

推荐文章

Android Studio 打包APP制作...

在使用android studio打包app时,需要制作JKS证书,具体的命令如下:D:\Program Files\Java\jre1.8.0_301\bin keytool -genkey -v -keystore dlq6.jks -...

用AI制作的软件是否可以申请软著?丁老师解答

目前随着AI的不断发展,Vibe Coding的持续普及,诞生了大量的AI软件开发工具(IDE),通过这些工具,可以让一个不懂软件开发的人、没有任何技术能力的人使用AI来开发出想要的软件、网站等等。有同学咨询丁老师,使用AI开发的软件,可以...

FastAdmin btn-dialog按钮...

fastadmin里自定义按钮的btn-dialog,弹出窗口时默认大小,设置了data-area无效,经过研究后,发现了可用的方法,直接上代码不废话:table.on('post-body.bs.table',functi...

宝塔面板phpmyadmin数据库表导航树禁...

宝塔面板的phpmyadmin,默认数据库表导航树是每30个一页,非常的不直观,可以通过修改宝塔phpmyadmin配置文件的方式来禁止他分页。修改方法:1.进入服务器/www/server/phpmyadmin/phpmyadmin_随机...