- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用第三方 API,它接收名字、中间名和姓氏作为参数。我现在拥有的是用户的全名。我无法更改此结构,因为它是无法更改的大型系统的一部分。
第三方 API 的参数结构无法更改,因此尽管这不是最佳解决方案,但我必须解析全名并将其拆分为三个字段。
名称仅来自英国,这很好。这就是我现在正在做的:
vector<string> fields;
myLibrary::split(' ', name, fields);
string firstName = fields[0];
string middleName = fields.size() == 3 ? fields[1] : "";
string surName = fields.size() == 3 ? fields[2] : fields[1];
但我很确定这是一个糟糕的解决方案,因为有多种情况,例如当一个名字的开头包含文本 Mr. 或结尾包含 Jr. 时。
有没有比这段代码能给我更好保证的代码块?
谢谢!
[更新]
在表单中向用户请求的名称是“Account Holder's Name”,此信息与银行帐户信息相关,因此用户不会输入他的昵称。我添加了 Jr. 或 Sr. 的示例作为我发现的一种可能情况,名称可能存在其他已知问题。有关英国名称属性的一些见解会很有用。
最佳答案
如果您在全名中自由输入,甚至包括不是名字的东西(例如“先生”,从技术上讲,这是一个与姓名分开的头衔),没有万无一失的方法可以将其转换为第一个名字/中间/最后 split 。
您可以想出一个启发式系统来捕捉常见情况,并不断运行您的数据集直到它通过。但是您找不到解决问题的 Elixir 。
我的建议是制定您的启发式方法,尽可能让它们 100% 发挥作用,然后将大型系统中的数据转换为拆分格式。将名称设计为一个整体字段的人完全犯了一个错误。如果那不可能,请让您的雇主知道它会继续导致问题,并且设计错误不是您的。
关于c++ - 考虑多种情况,在 C++ 中解析英国用户的全名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29173779/
我正在尝试用此人的全名填充 Yii2 中的下拉列表,名字和姓氏在我的数据库中的不同列中。 在我的个人表中 编号 名字 姓氏 dep_id (fk) ... 在我的 Person.php 模型中有 pu
我目前正在像这样连接名字和姓氏(使用 PostgreSQL): concat(customers.firstname, ' ', customers.lastname) 我在这里遇到的问题是我的客户只
从 (new Date()).toString() 返回的字符串看起来像这样: "Tue Nov 22 2016 14:14:51 GMT-0800 (Pacific Standard Time)"
关闭。这个问题是not reproducible or was caused by typos .它目前不接受答案。 这个问题是由于错别字或无法再重现的问题引起的。虽然类似的问题可能是on-topi
已经将近 3 天了,我仍然无法修复该错误。简单的情况,我想搜索人名(姓名和姓氏)。 示例: 首先我写给 John(结果:John Newman、John Stable、John Carens) 然后我
我在我的项目中使用 Laravel 5.3,我试图获取多个列并在 View 的下拉选择元素中显示数据。我正在做这样的查询: $users = User::select( DB:
我目前正在使用此脚本从给定路径中提取名称、文件夹、文件夹名称: Get-ChildItem "C:\user\desktop" | Select Name, ` @{ n = 'Folde
我通过在 ApplicationUser 中添加几个字段扩展了 ASP NET 身份架构。派生自 IdentityUser 的类.我添加的字段之一是 FullName . 现在,当我写 User.Id
我正在开发一个 Android 应用程序,其中任何使用我们的应用程序登录到 Facebook 的 Android 用户,我需要从 Facebook 中提取他的照片、他的性别和他的全名。我正在为此使用
我是一名优秀的程序员,十分优秀!