正则表达式删除全名中的中间名首字母
RegEx to Remove Middle Initial in a Full Name
示例名称: 注意没有空格。
约翰·史密斯
麦克·约翰逊
彼得沃克
结果应该是:
约翰史密斯
迈克约翰逊
彼得沃克
[A-Z]{2} RegEx 只匹配两个大写字母,不知道如何从这里开始。
谢谢。
假设,你有
1)名称以大写字母开头,后跟一些小写字母 -> [A-Z][a-z]*
2)大写中间字母-> [A-Z]
3)大写最后一个字母后跟一些小写字母 -> [A-Z][a-z]*
你可以把他们分成3组
(^[A-Z][a-z]*)([A-Z])([A-Z][a-z]*)
因为需要first和last group.You可以这样得到-> $1$3
例如
'JohnJSmith'.replace(/(^[A-Z][a-z]*)([A-Z])([A-Z][a-z]*)/,'')->"JohnSmith"
示例名称: 注意没有空格。
约翰·史密斯
麦克·约翰逊
彼得沃克
结果应该是:
约翰史密斯
迈克约翰逊
彼得沃克
[A-Z]{2} RegEx 只匹配两个大写字母,不知道如何从这里开始。
谢谢。
假设,你有
1)名称以大写字母开头,后跟一些小写字母 -> [A-Z][a-z]*
2)大写中间字母-> [A-Z]
3)大写最后一个字母后跟一些小写字母 -> [A-Z][a-z]*
你可以把他们分成3组
(^[A-Z][a-z]*)([A-Z])([A-Z][a-z]*)
因为需要first和last group.You可以这样得到-> $1$3
例如
'JohnJSmith'.replace(/(^[A-Z][a-z]*)([A-Z])([A-Z][a-z]*)/,'')->"JohnSmith"