Heim >Backend-Entwicklung >PHP-Tutorial >怎么从一堆英文名称里找出中国人?

怎么从一堆英文名称里找出中国人?

WBOY
WBOYOriginal
2016-06-06 20:25:401913Durchsuche

有一堆的英文名称列表
Sjoerd van Tuinen
Ulisses Caramaschi
Ulisses Caramaschi
Pankaj Sekhsaria
Brandon Ballengée
Prima Adi Yoga
Mehmet Tunçer
Guoyou Zhang
Jose Carlos Mariategui
Cesar Amorós
Anne Pyburn
Bruce D Patterson
Nancy Sevcenko
Dwirienna Adiyanti
Ulises Chavez Jimenez

里面夹杂着中国人的英文名,比如Guoyou Zhang,怎么用程序能够快速地筛选出中国人姓名。
可以有中文姓氏和常用汉字的拼音列表。不知道用php程序怎么写?

回复内容:

有一堆的英文名称列表
Sjoerd van Tuinen
Ulisses Caramaschi
Ulisses Caramaschi
Pankaj Sekhsaria
Brandon Ballengée
Prima Adi Yoga
Mehmet Tunçer
Guoyou Zhang
Jose Carlos Mariategui
Cesar Amorós
Anne Pyburn
Bruce D Patterson
Nancy Sevcenko
Dwirienna Adiyanti
Ulises Chavez Jimenez

里面夹杂着中国人的英文名,比如Guoyou Zhang,怎么用程序能够快速地筛选出中国人姓名。
可以有中文姓氏和常用汉字的拼音列表。不知道用php程序怎么写?

只能找个库匹配了。
如果这是你们产品经理提出来的,请果断让他放弃这个想法。

这个网上很多吧 ,给个链接

参考excel的识别方式看看

汉字区分出来比较容易啦
主要是如何区分英文与拼音

我的想法是找个拼音库,然后对比找出拼音,判断是否中国人姓名

你可以看下面的链接下,看下里面的源码是否可以做拼音库
http://www.oschina.net/code/snippet_862384_25415

需要一个中文拼音的分词库!!!否则无法实现!!!

不知道php怎么处理,Java的话可以用pinyin4j从百家姓生成一份姓氏拼音表再匹配

没有十分准确的办法,因为没办法严格区分。即便你能整理一个拼音库,也有很多问题。举个例子,一位嫁给老外的女士,改用丈夫姓氏,对比库无法处理。藏蒙等少数民族的名字无法处理。韩国、泰国等国家有姓氏的拼写方式和中文重合。

本质是区分拼音和英文单词,用正则匹配:
1.拿常用姓氏的拼音结尾规则去匹配所有姓名,拿到初筛数据。
2.大部分的汉子拼音都由声母和韵母结合构成,利用这个规则进一步检验初筛数据

你说Marry Zhang这个是中国人还是外国人呢?
能匹配的前提是别像外企一样让中国人非得给自己起个洋名

同样的Mike是英文的麦克还是中文的米克呢?这个问题倒是不大

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn