电子表格清洁文本并按正则表达式拆分
Spreadsheet clean text and split by regex
我有这个字符串:
Engaged View Beacon Url: https://ad.doubleclick.net/ddm/trackimp/..., Dcm Beacon Url: https://ad.doubleclick.net/ddm/trackimp/.....
我尝试从中提取两个 url。
我试过了,但我只得到第一个 url。为什么?我该如何改进?
=SPLIT(REGEXREPLACE(REGEXREPLACE(F21, "Dcm Beacon Url: ", "♥"), "Engaged View Beacon Url: ", ""), "♥")
尝试:
=ARRAYFORMULA(IFERROR(SPLIT(FLATTEN(
QUERY(TRANSPOSE(IF(ISURL(SPLIT(A2, " ")),
SPLIT(A2, " "), )),,9^9)), " ")))
您没有显示整个字符串,所以我们不知道可以使用哪些标记。也就是说,您可以试试这个(假设您的原始字符串在 A2 中):
=REGEXEXTRACT(A2,REPT(".+(http[^\s,]+)",2))
输出将需要 两个 个水平单元格。所以如果你把它放在 B2 中,首先确保 B2 和 C2 都是空闲的。
如果这不起作用,请考虑共享您要破坏的整个字符串。
我从
看到的更简单的答案和修改
=transpose(split(join(",",REGEXEXTRACT(A1,REGEXREPLACE(A1,"(https[^,]+)","()"))), ","))
你可以选择删除转置,我只是用它来清楚地显示结果。
我有这个字符串:
Engaged View Beacon Url: https://ad.doubleclick.net/ddm/trackimp/..., Dcm Beacon Url: https://ad.doubleclick.net/ddm/trackimp/.....
我尝试从中提取两个 url。
我试过了,但我只得到第一个 url。为什么?我该如何改进?
=SPLIT(REGEXREPLACE(REGEXREPLACE(F21, "Dcm Beacon Url: ", "♥"), "Engaged View Beacon Url: ", ""), "♥")
尝试:
=ARRAYFORMULA(IFERROR(SPLIT(FLATTEN(
QUERY(TRANSPOSE(IF(ISURL(SPLIT(A2, " ")),
SPLIT(A2, " "), )),,9^9)), " ")))
您没有显示整个字符串,所以我们不知道可以使用哪些标记。也就是说,您可以试试这个(假设您的原始字符串在 A2 中):
=REGEXEXTRACT(A2,REPT(".+(http[^\s,]+)",2))
输出将需要 两个 个水平单元格。所以如果你把它放在 B2 中,首先确保 B2 和 C2 都是空闲的。
如果这不起作用,请考虑共享您要破坏的整个字符串。
我从
=transpose(split(join(",",REGEXEXTRACT(A1,REGEXREPLACE(A1,"(https[^,]+)","()"))), ","))
你可以选择删除转置,我只是用它来清楚地显示结果。