不使用INDEX/SPLIT通过REGEXEXTRACT提取分隔符后社区名称
可用正则公式
直接使用如下公式即可提取最后一段分隔符后的社区名称:
=REGEXEXTRACT(待提取文本所在单元格/直接输入文本, ".*-\s*(.*)")
示例测试
- 对示例1输入调用公式:
=REGEXEXTRACT("Iowa - Cedar Rapids - Meth-Wick Community", ".*-\s*(.*)"),输出结果为Meth-Wick Community,符合预期 - 对示例2输入调用公式:
=REGEXEXTRACT("Iowa - Cedar Rapids - The Gardens of Cedar Rapids", ".*-\s*(.*)"),输出结果为The Gardens of Cedar Rapids,符合预期
规则说明
这个正则的匹配逻辑是先匹配从文本开头到最后一个-的所有内容,再捕获最后一个-之后去除开头空白的所有字符,不管社区名称里包含空格、连字符都可以正常识别。你之前写的公式存在两个问题:一是仅匹配字母数字和空格,遇到社区名含连字符等符号就会匹配失败;二是同时捕获了三个分组,默认返回第一个分组的内容,自然拿不到目标的最后一段结果。
内容的提问来源于stack exchange,提问作者Code Guy
相关产品推荐
相关产品推荐

