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

你学会了吗?

标签:

相关文章

Mysql中5.7以下版本对Json数据的处...

在Mysql中,5.7以下版本是不支持Json对象的,但是可以将数据以json字符串的形式,保存在数据库的text字段中。以下是针对Mysql5.7以下版本json字符串的一些处理方法。#根据键值name查询(需要注意单双引号) sel...

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

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

JavaScript中的字符串取第一个词的方...

有一个需求,要求在Javascript的字符串中,取出第一个词,注意,是字符串中的第一个单词,不是字符。研究了下,给出具体代码:var str="News media should foster peace and disar...

Mysql导入文件,source命令/php...

用phpmyadmin导入大数据库文件时,容易502 bad gateway,可以直接在linux上用mysql原生命令导入。1.上传sql文件到目录用Xshell登录服务器,将迁移过来的 sql 文件移到 home 目录下,方便下一...

推荐文章

APP/小程序/网站/对接微信支付常见问题解...

现在微信支付已经超越支付宝,成为中国最广泛的在线支付方式。作为互联网电子商务服务商,如何开通对接微信支付?如何使用微信支付呢?丁老师整理一篇微信支付常见的问题解答。一、如何开通微信支付?微信支付可以在微信支付官网(https://pay.w...

Tortoise Svn出现No Path ...

在日常开发过程中,突然发现svn无法提交和更新,出现“no path or pathfile specified on the command line”的错误,网上搜了一圈百度 google 以及stack overflow都没找到真正能...

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

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

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

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

当前在线
免费咨询