php - 怎么从一堆英文名称里找出中国人?
高洛峰
高洛峰 2017-04-10 16:14:00
0
9
388

有一堆的英文名称列表
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程序怎么写?

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

reply all (9)
PHPzhong

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

    Ty80

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

      PHPzhong

      参考excel的识别方式看看

        Ty80

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

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

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

          PHPzhong

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

            迷茫

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

              阿神

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

                大家讲道理

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

                  Peter_Zhu

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

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

                    Latest Downloads
                    More>
                    Web Effects
                    Website Source Code
                    Website Materials
                    Front End Template
                    About us Disclaimer Sitemap
                    php.cn:Public welfare online PHP training,Help PHP learners grow quickly!