如何使用正则表达式匹配url中的tld?

发布于 2024-10-28 00:28:01 字数 74 浏览 1 评论 0原文

如何使用正则表达式匹配url中的tld?

需要匹配tld,包括几乎所有国家、组织。可以不用正则表达式,但需要有效的匹配

how to use Regular Expression match tld in url?

Need to match the tld, including almost all countries, organizations. Can do without the regular expression, but requires an efficient match

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦里梦着梦中梦 2024-11-04 00:28:01

您需要使用正则表达式吗?通常使用正则表达式是矫枉过正的。几行代码会比大型正则表达式更快、更易于维护。

如果您的语言有 split 方法,只需在 "." 上使用该方法,tld 将是数组中的最后一项。如果您陷入 C++ 或某些只是从字符串末尾向后搜索到第一个 . 的情况,那么从该点开始的字符串的其余部分就是 tld。

arr = url.split(".")
tld = arr[length - 1]

或者

int period = url.find_from_last('.');
tld = url.substring(period, npos);

(我忘记了 C++ std::string 的确切语法,但与上面类似)

Do you need to use a regex? Often using a regular expression is overkill. A few lines of code will be faster, and more maintainable than a big regular expression.

If your language has a split method just use that on a "." and the tld will be the last item in the array. If you're stuck in C++ or something just search backward from the end of the string to the first ., then the rest of the string from that point is the tld.

arr = url.split(".")
tld = arr[length - 1]

or

int period = url.find_from_last('.');
tld = url.substring(period, npos);

(I forgot the exact syntax for C++ std::string, but something similar to above)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文