虽然我可以从包含多个文本值的单元格中提取第一个单词并进行错误检查,但如果不存在多个值,则返回唯一的单词。对于某些源单元格在多个单词之间包含逗号的情况,我似乎无法围绕添加更多检查(或者甚至可能在相同的嵌套公式中)。例如,下面的公式将从“詹姆斯万豪酒店”返回“詹姆斯”。但是,它从“詹姆斯,万豪”返回“詹姆斯”。如果我在范围内的所有细胞都是一致的,那将很容易,但事实并非如此。尝试嵌套多个查找语句导致失败。建议?
=IFERROR(LEFT(A1,FIND(" ",A2)-1),A2)
要复合,还有一些单元格包含缩写作为第一个单词,所以我也需要考虑到这一点。例如“J.W. Marriott”,我需要应用上述逻辑来提取“万豪”。
以下是一些示例:
Text Desired output
James Marriott James
James, Marriott James
Able Acme Able
Golden, Eagle Golden
J.W. Marriott Marriott
A.B. Acme Acme
答案 0 :(得分:1)
您可以使用regex
(设置请查看帖子here)
然后,您可以使用以下公式提取所需的单词:
=regex(A1, "(?![Etc])[a-zA-Z]{2,}")
(这是在单元格A1中搜索两个或多个小写或大写字母的模式...而不是搜索Etc)