过滤掉包含 3 个或更多子文件夹的行

Filter Out Rows With 3 Or More Sub-Folders

我想过滤掉第三级或更高级别的 URL 条目。例如 https://example.com/folder1/folder2/folder3 would be filtered out but https://example.com/folder1/folder2 将不会被过滤。我试图使用正则表达式创建过滤器:

=filter(A2:A10000, regexmatch(A2:A10000 "https://[^/]+/[^/]+/[^/]+/.*"))

没有任何输出表明我已关闭,因为没有过滤任何行。

=ARRAYFORMULA(SUBSTITUTE(REGEXREPLACE(TRIM(TRANSPOSE(QUERY(TRANSPOSE(QUERY(
 IF(IFERROR(SPLIT(A2:A, "/"))<>"", IFERROR(SPLIT(A2:A, "/"))&"/", ), 
 "where Col5 is not null", 0)), , 999^99))), "\s|/$", ), ":/", "://"))

我相信你应该像这样简单地改变你的正则表达式:

=filter(A2:A,not(regexmatch(A2:A,"https?:\/(\/.+?){4}.*")))

这考虑了您的 URL 可能的尾部斜杠,请参阅 https://regex101.com/r/BEJYTF/1