PHP如何拆分中文名字(包括少数民族名字)

/*** @param string|null $name* @return array|null*/
function splitName($name)
{if (empty($name) || empty(trim($name))) {return null;}//该正则是用来提取$name参数里面的中文字符的。preg_match_all('/[\x{4e00}-\x{9fff}]+/u', $name, $matchers);$matchersCount = isset($matchers[0]) ? count($matchers[0]) : 0;if ($matchersCount <= 0) {return null;}$firstName = $lastName = '';if ($matchersCount == 1) {$lastName = mb_substr($name, 0, 1);$firstName = mb_substr($name, 1);} else {foreach ($matchers[0] as $index => $value) {if ($index == 0) {$firstName = $value;} else {$lastName .= $value;}}}return compact('firstName', 'lastName');
}var_dump(splitName("姓名"));
var_dump(splitName("姓1231名adsa"));
var_dump(splitName("买买提·吐尔逊"));

测试结果如下:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/618296.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024年,谷歌云首席技术官眼中的生成AI三大支柱,来看看有啥新花样

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

App在线封装的革命性创新

随着移动互联网的蓬勃发展&#xff0c;App已经成为我们日常生活中不可或缺的一部分。从购物、交通、社交到娱乐&#xff0c;几乎每个人的智能手机都装载着数十个应用程序&#xff0c;以满足各式各样的需求。然而&#xff0c;对于许多非技术背景的企业家和小型企业而言&#xff…

java---final以及抽象类

final - 修饰变量&#xff1a;变量不能被改变 //演示final修饰变量class Aoo{final int num 5;void show(){//num 55; //编译错误&#xff0c;final的变量不能被改变}} - 修饰方法&#xff1a;方法不能被重写 //演示final修饰方法class Boo{final void show(){}}class Coo ex…

Spring整理-Spring Bean的作用域

在Spring框架中,Bean的作用域定义了Bean实例的生命周期和可见性。Spring提供了多种作用域选项,适用于不同的应用需求。 Spring中的主要Bean作用域 Singleton:默认的作用域。在Spring IoC容器中,对于每个Spring Bean配置,只创建一个实例。适用于无状态的服务,如配置、工具…

【机器学习】模型参数优化工具:Optuna使用分步指南(附XGB/LGBM调优代码)

常用的调参方式和工具包 常用的调参方式包括网格搜索(Grid Search)、**随机搜索(Random Search)和贝叶斯优化(Bayesian Optimization)**等。 工具包方面&#xff0c;Scikit-learn提供了GridSearchCV和RandomizedSearchCV等用于网格搜索和随机搜索的工具。另外&#xff0c;有一…

VS报错:error:LNK2005 _main 已经在 *.obj 中定义

应该是重定义了&#xff0c;但是又解决不了&#xff0c;看似又没有重定义啊&#xff0c;就在一个文件定义了啊&#xff1f;怎么会出现这种情况呢&#xff1f;关键是&#xff0c;编译报错&#xff0c;程序运行不了了。 这里提一下我的前期操作&#xff0c;是因为将一个头文件和…

云原生 微服务 restapi devops相关的一些概念说明(持续更新中)

云原生&#xff1a; 定义 云原生是一种构建和运行应用程序的方法&#xff0c;是一套技术体系和方法论。它是一种在云计算环境中构建、部署和管理现代应用程序的软件方法。云原生应用程序是基于微服务架构的&#xff0c;采用开源堆栈&#xff08;K8SDocker&#xff09;进行容器…

NULL是什么?

NULL是一个编程术语&#xff0c;通常用于表示一个空值或无效值。在很多编程语言中&#xff0c;NULL用于表示一个变量或指针不引用任何有效的对象或内存位置。 NULL可以看作是一个特殊的值&#xff0c;表示缺少有效的数据或引用。当一个变量被赋予NULL值时&#xff0c;它表示该变…

10年Java面试总结:Java程序员面试必备的面试技巧

作为一名资深10年Java技术专家&#xff0c;我参与了无数次的面试&#xff0c;无论是作为面试者还是面试官。在这里&#xff0c;我将分享我的一些面试经历和面试技巧&#xff0c;希望能帮助即将面临面试的Java程序员们。 本文已收录于&#xff0c;我的技术网站 ddkk.com&#x…

柳氏新论:慈不掌兵的两层含义

前几天在一个如何理解慈不掌兵的回答中&#xff0c;我提出了这句话实际上有两层含义。这个应该是我第一个提出的。所以单独摘录出来。 第一层含义&#xff0c;不能怕士兵伤亡 这一层&#xff0c;所有人都能理解。比如你是个连长&#xff0c;正在防守阵地&#xff0c;排长过来报…

CMake_02_如何编译可调试文件

软件开发过程中&#xff0c;调试是必不可少的环节之一&#xff0c;让可执行文件”明牌“执行&#xff0c;不会漏过每一行代码&#xff0c;每一个变量的信息。从而帮助开发者快速定位到问题点。 先看下没有调试信息的可执行文件是什么样子&#xff1f; rootlocalhost:~/testWo…

【面试宝典】图解ARP协议、TCP协议、UDP协议

一、ARP协议 二、TCP协议 三、UDP协议 四、TCP和UDP的区别

Linux Git打包部署JAVA项目 shell脚本

my-test-8080.jar.sh 脚本 #!/bin/bashBASE_PATH"/root/local"GIT_BASE_PATH"/root/local/publish/my-java-study"SCRIPT_NAME$(basename "$0")JAR_NAME"${SCRIPT_NAME%.sh}"BRANCH_NAME"dev"GIT_URL"gitgitee.com:xx…

LeetCode 36. 有效的数独

有效的数独 请你判断一个 9 x 9 的数独是否有效。只需要 根据以下规则 &#xff0c;验证已经填入的数字是否有效即可。 数字 1-9 在每一行只能出现一次。 数字 1-9 在每一列只能出现一次。 数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。 一次遍历法 有效数独的三个…

如何有效使用360评估

导语&#xff1a;360度评估是绩效考核方法之一&#xff0c;被评估者不仅可以从自己、上司、部属、甚至顾客处获得多种角度的反馈&#xff0c;也可从这些不同的反馈清楚地认识到自己的不足、长处与发展需求。但360度评估也有其适用的范围和条件&#xff0c;华为总裁任正非给出了…

抽丝剥茧设计模式-目录

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 01 设计模式前言-设计模式源码02 Singleton单例03 Strategy策略04 FactoryMethod工厂方法-AbstractFactory抽象工厂05 Facade门面-Mediator调停者06 Decorator装饰器…

impala元数据自动刷新

一.操作步骤 进入CM界面 > Hive > 配置 > 搜索 启用数据库中的存储通知(英文界面搜索&#xff1a;Enable Stored Notifications in Database)&#xff0c;并且勾选&#xff0c;注意一定要勾选&#xff0c;配置后面的配置不生效。数据库通知的保留时间默认为2天&#…

Nacos下载与安装【windows】

&#x1f95a;今日鸡汤&#x1f95a; 我不知将去何方&#xff0c;但我已经在路上。 ——宫崎骏《千与千寻》 目录 &#x1f95e;1.Nacosdi地址 &#x1f32d;2.GitHub下载 &#x1f37f;3.目录结构 &#x1f953;4.启动nacos &#x1f9c2;5.客户端登陆 &#x1f9c8…

GitHub 一周热点汇总第5期(2024/01/07-01/13)

GitHub一周热点汇总第5期 (2024/01/07-01/13)&#xff0c;梳理每周热门的GitHub项目&#xff0c;这一周的热门项目都普遍比较年轻&#xff0c;有几个更是刚刚发布就火热起来了&#xff0c;一起来看看都有哪些项目吧。 #1 llm-course 项目名称&#xff1a;llm-course - 大语言…

华为路由器OSPF动态链路路由协议配置

R1配置 interface GigabitEthernet0/0/0ip address 10.1.12.1 255.255.255.252 interface LoopBack0ip address 1.1.1.1 255.255.255.255 ospf 1 router-id 1.1.1.1 area 0.0.0.0 network 1.1.1.1 0.0.0.0 network 10.1.12.0 0.0.0.3 R2配置 interface GigabitEthernet0/0/0i…