gpt4 book ai didi

正则表达式 - URL 正则表达式专门用于 Excel VBA

转载 作者:行者123 更新时间:2023-12-04 22:27:14 24 4
gpt4 key购买 nike

我试图想出我自己的 url 正则表达式变体以在 vba 中使用

这是我目前拥有的:

((https?\:\/\/)?([^\s\.\-]{1,}(?:(?:\.|\-)[^\s\.\-]{1,}){0,})(?=\.(?:[^\s]{1,}){0,2}\/|$)(\.ac|\.ad|\.ae|\.af|\.ag|\.ai|\.al|\.am|\.ao|\.aq|\.ar|\.as|\.at|\.au|\.aw|\.ax|\.az|\.ba|\.bb|\.bd|\.be|\.bf|\.bg|\.bh|\.bi|\.bj|\.bm|\.bn|\.bo|\.br|\.bs|\.bt|\.bw|\.by|\.bz|\.ca|\.cc|\.cd|\.cf|\.cg|\.ch|\.ci|\.ck|\.cl|\.cm|\.cn|\.co|\.cr|\.cu|\.cv|\.cw|\.cx|\.cy|\.cz|\.de|\.dj|\.dk|\.dm|\.do|\.dz|\.ec|\.ee|\.eg|\.es|\.et|\.eu|\.fi|\.fj|\.fk|\.fm|\.fo|\.fr|\.ga|\.gd|\.ge|\.gf|\.gg|\.gh|\.gi|\.gl|\.gm|\.gn|\.gp|\.gq|\.gr|\.gs|\.gt|\.gu|\.gw|\.gy|\.hk|\.hm|\.hn|\.hr|\.ht|\.hu|\.id|\.ie|\.il|\.im|\.in|\.io|\.iq|\.ir|\.is|\.it|\.je|\.jm|\.jo|\.jp|\.ke|\.kg|\.kh|\.ki|\.km|\.kn|\.kp|\.kr|\.kw|\.ky|\.kz|\.la|\.lb|\.lc|\.li|\.lk|\.lr|\.ls|\.lt|\.lu|\.lv|\.ly|\.ma|\.mc|\.md|\.me|\.mg|\.mh|\.mk|\.ml|\.mm|\.mn|\.mo|\.mp|\.mq|\.mr|\.ms|\.mt|\.mu|\.mv|\.mw|\.mx|\.my|\.mz|\.na|\.nc|\.ne|\.nf|\.ng|\.ni|\.nl|\.no|\.np|\.nr|\.nu|\.nz|\.om|\.pa|\.pe|\.pf|\.pg|\.ph|\.pk|\.pl|\.pm|\.pn|\.pr|\.ps|\.pt|\.pw|\.py|\.qa|\.re|\.ro|\.rs|\.ru|\.rw|\.sa|\.sb|\.sc|\.sd|\.se|\.sg|\.sh|\.si|\.sk|\.sl|\.sm|\.sn|\.so|\.sr|\.ss|\.st|\.su|\.sv|\.sx|\.sy|\.sz|\.tc|\.td|\.tf|\.tg|\.th|\.tj|\.tk|\.tl|\.tm|\.tn|\.to|\.tr|\.tt|\.tv|\.tw|\.tz|\.ua|\.ug|\.uk|\.us|\.uy|\.uz|\.va|\.vc|\.ve|\.vg|\.vi|\.vn|\.vu|\.wf|\.ws|\.ye|\.yt|\.za|\.zm|\.zw)(\/[^\s]{0,})?)

目前我正在尝试匹配特定的域名结尾,因为我想排除移动应用名称(例如,不应包括 com.king.candycrushsodasaga)但是,如果我可以使用更通用的正则表达式来实现此目标,那就太好了,因为手动放置所有这些域结尾不是很有效/高效

如果有更好的方法,请告诉我。

感谢任何帮助。

附加信息:我正在尝试将它用于 excel,我可以将一堆 url,包括移动应用程序(如 com.king.candycrushsodasaga)放入表格中,并匹配不同列中的实际网站以排除移动应用程序等非网站.

表格是这样的:

The table looks something like this

更多背景信息:

我已经有一个vba函数,可以作为公式使用。它接受 2 个参数,一个是 url 所在的单元格/范围,另一个是正则表达式所在的范围。出于某种原因,长字符串会抛出“#value”,所以我不得不拆分一些正则表达式。

公式是这样的:

=IF(IsMatch([@Url];RegularExps[URL Regex 1]);"Website";"Other")

我已经尝试使用这篇文章中的 regex'es(或 regexi,不管 regex 的复数形式是什么):What is the best regular expression to check if a string is a valid URL?

但我对它们中的任何一个都没有成功,因为它们要么包含应用程序域,要么抛出#value,要么排除有效的 url

最佳答案

只需在 co 之前添加到您的巨大交替 \.com 中,例如 (...|\.com...),因为它会成功匹配省略 m 并且不检查 com

关于正则表达式 - URL 正则表达式专门用于 Excel VBA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56663983/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com