"),$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 浏览: 3611 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}?]"来区分的中英文。
英文是通过正则表达式,排除了中文后的内容;
而中文,是通过正则表达式,只抓取中文的内容;

你学会了吗?

标签:

相关文章

Thinkphp的的代码为什么改了没效果?删...

有一个使用ThinkPHP框架开发程序的同学,遇到了这样一个问题,程序的代码明明已经改了,但在执行时还是按照以前的代码逻辑执行的,新修改的没有起到效果,并且他为了测试程序,都已经把这个程序文件删除了,但程序还是能执行,不得已求助于丁老师...

宝塔"在未指定SSL默认站点时,未开启SSL...

宝塔系统相关问题解决方法

Tiny编辑器无法使用的解决办法

TinyMCE编辑器,是一款轻量级的的网页内容编辑器,支持html,vue,react等前端架构。调用方法也非常简单,引入js文件,在textarea上设置id,然后调用方法即可:<scripttinymce.init({ sel...

网易企业邮箱客户端SSL端口设置

最近经常配置OJS系统的(Open Journal Systems期刊管理系统 )发信功能,客户使用的是网易企业邮箱,根据网易企业邮箱帮助中心的文档显示,smtp服务加密ssl的端口是994,如图:结果设置了以后,怎么也发不了邮件,就在...

推荐文章

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

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

Javascript复制对象改变原值的解决办...

在进行vue开发中,经常会遇到复制对象,赋值新对象后,原对象值被改变的问题,举个例子:let old={ "a":1, "b":2 } let new=old; new['c']=3;...

抖音小程序开发的流程是什么?

开发抖音小程序是一个涉及多个步骤的过程,需要准备相应的资料和工具。以下是开发抖音小程序需要准备的资料和步骤:1. 入驻抖音开发平台:首先,你需要在抖音开放平台注册一个开发者账号,并完成主体认证和对公认证。如果未完成认证,你可以在沙盒工具中创...

BT宝塔升级方法

由老版本7.2自动升级时,会出现很多问题,建议在终端手动升级。升级命令:curl http://download.bt.cn/install/update_panel.sh|bash