【发布时间】:2021-10-01 16:48:27
【问题描述】:
我有一个 Google 电子表格,其中有网址列表。我有从 URL 中提取域的公式。但问题是当一个 URL 在域中有多个名称时。例如
我已将链接附加到示例文档和我尝试过的两个公式。这两个公式在某些格式下完美地工作,而不是在其他一些情况下。如果有办法结合这两种或某种方式来理解 URL 格式并选择最佳公式来提取域会很好。我试过无法达到预期的输出。谷歌表格链接如下。
【问题讨论】:
我有一个 Google 电子表格,其中有网址列表。我有从 URL 中提取域的公式。但问题是当一个 URL 在域中有多个名称时。例如
我已将链接附加到示例文档和我尝试过的两个公式。这两个公式在某些格式下完美地工作,而不是在其他一些情况下。如果有办法结合这两种或某种方式来理解 URL 格式并选择最佳公式来提取域会很好。我试过无法达到预期的输出。谷歌表格链接如下。
【问题讨论】:
你可以只用一个公式,REGEXEXTRACT
首先,我们从 url 中提取主机名。为此,我们使用以下公式:
=REGEXEXTRACT(A2:A,"(?:www\.)?([\w._\-]{6,})")
现在,我们从主机名中提取域。你可以这样做:
=REGEXEXTRACT(...hostname... ,"[\w_\-]+\.\w{0,4}\.?\w{0,4}$")
现在我们将所有内容构建到一个数组公式中:
=ARRAYFORMULA(if(A2:A<>"",REGEXEXTRACT(REGEXEXTRACT(A2:A,"(?:www\.)?([\w._\-]{6,})"),"[\w_\-]+\.\w{0,4}\.?\w{0,4}$"),))
我不会假装是你任务的最佳解决方案 - 也许有人会告诉你一些更简单的事情。
【讨论】:
www. 异常