首页 > 解决方案 > REGEXREPLACE 所有字符,直到至少 4 个连续的大写字母

问题描述

在一个很长的字符串中,我想删除以 a 开头的所有内容,SPAIN: 直到我们连续获得至少 4 个以 a 结尾的大写字母: (即。INDIA:SOUTH AFRICA:NORTHERN-IRELAND:)。

我尝试 A2 是很长的字符串:

=REGEXREPLACE(A2,"SPAIN: .*([A-ZÀ-ÿ\-\' ]{4,}): ","$1: ")

不幸的是,上面的方法不起作用,因为它会擦除字符串中最后 4 个大写字母之前的所有内容。

有任何想法吗?

在此处使用的工作表示例:https ://docs.google.com/spreadsheets/d/1_DbCmGhqaDvFtdi20PnuA35i-Sv_3nMS9Kl_e7CVu3k/edit?usp=sharing

标签: google-sheetsgoogle-sheets-formula

解决方案


尝试:

=REGEXREPLACE(A1,"SPAIN:([^:]+)([^A-Z:])","$2: ")

在此处输入图像描述

样品表将按照以下公式工作:

=ArrayFormula(REGEXREPLACE(A2:A,"ESPAGNE:(.*?)-:-([A-Z]|$)","$2"))

在此处输入图像描述


推荐阅读