我想将单元格中的姓氏与任何一个/中间的名称分开。
eg:
"Greg Smith"
"Andy H K Anderson"
"Tony & Amanda Ferguson"
变成
Greg | Smith
Andy H K | Anderson
Tony & Amanda | Ferguson
在这里或在任何其他网站上都找不到答案。但是,我确实设法编写了自己想分享的公式,以防其他人遇到同样的问题。也许别人可以制作更好的版本。
名字:
=LEFT(A2,MINUS(LEN(A2),LEN(INDEX(SPLIT(A2," "),0,COUNTA(SPLIT(A2," "))))))
姓氏:
=INDEX(SPLIT(A2," "),0,COUNTA(SPLIT(A2," ")))
一种替代方法(使用单个数组公式)将是使用regexextract
=Arrayformula(if(len(A2:A), regexextract(A2:A, "(.+)s([^s]+)$"),))
第一个捕获组(。 )提取
- 每个角色。
- 在最后一个空间之前(以"贪婪"方式),
第二个捕获组([^ s] )提取物
- 最后一个空间之后的一切[^ s]
- 到字符串$。 的末端