regex - 用于检查字符串是否为人名的正则表达式或数据库?

标签 regex

我有一个应用程序可以读取有关车辆名称的 XML 信息并将其解析到我的应用程序中。在我的数据库中,我总是根据是个人姓名还是公司名称来存储我的姓名(因为这可能会出现在我的系统中)。问题是XML源有姓名数据,但是没有指明是个人还是公司。我需要知道这样我才能将它适本地存储在我的数据库中。是否有可以检查字符串以查看它是否与个人姓名匹配的名称数据库或正则表达式或库?谢谢!

最佳答案

在我曾经工作过的一家大型电信公司,我们遇到了这个问题。我们在 200 万个以上的名字上测试了以下正则表达式

([A-Z][a-z][a-z]*)  *([A-Z][a-z]*)\.?  *([A-Z][a-z][a-z][a-z]*)

我们得到了 99.8% 的准确率。数据相当干净。这是用于 C 中的正则表达式引擎 - 因此语法可能与 perl 有点不同。不知道你有没有
将需要括号。

关于regex - 用于检查字符串是否为人名的正则表达式或数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1758737/

相关文章:

regex - Python-正则表达式语法。查找字符串,删除部分并返回结尾

PHP 从字符串中获取图像的所有 URL

python - 是否有可能在 Python 正则表达式中将数组作为一个匹配组

Python 正则表达式,多行匹配模式.. 为什么这不起作用?

python - 正则表达式:获取单词的第一个实例,除非中间有 "forbidden"单词

regex - 完全贪婪/不情愿 X{n} 之间的区别?

python - Scrapy 跟随与正则表达式匹配的链接

JavaScript 如何从字符串中删除所有未加引号的空格

php 正则表达式函数无法转换 JavaScript 参数

Javascript正则表达式匹配数字零或任何大于零的整数