gpt4 book ai didi

javascript 正则表达式或字符串方法仅匹配子域和域(减去顶级)

转载 作者:行者123 更新时间:2023-11-30 21:20:05 26 4
gpt4 key购买 nike

在浏览器中,我想找出我所在页面的子域和域名是什么,减去“com”和“.co.uk”等顶级域名。

此外,如果子域是“www”,我不想匹配它。

例子:

https://www.voice-1.mozilla.co.uk/folder/index.html
https://www.voice-1.mozilla.org.uk/folder/index.html
http://www.voice-1.mozilla.com/folder/index.html
http://www.voice-1.mozilla.com:8080/folder/index.html

都会匹配 voice-1mozilla

最好不必维护顶级域,但维护 www 的不同变体是可以的。

到目前为止,我已经跳过 comco.uk 但没有跳过 wwworg.uk 而在文件路径中的 . 之前没有任何其他内容:regex-test

现在的正则表达式是:

/[\w\-]{3,}(?=[.])/g

如何着手实现这一目标?

编辑:在正则表达式之后有一个步骤,去除不需要的 wwwco.uk 中的 co 中的 org >org.uk 没问题。但是我仍然需要删除顶层以及文件路径中 . 之前的任何其他内容。基本上抓取 // 和第一个 / 之间的所有内容,顶级域除外。

最佳答案

我设法得到了 this .去掉了 wwwindex

\.([\w\-]{3,})(?=[\.])

如果允许使用字符串方法,您可以尝试这样的方法。

str = 'https://www.voice-1.mozilla.co.uk/folder/index.html'
arr = str.split('/')
result = arr[2].split('.')

您将在result 中分别获得每个部分。您需要检查第一个元素(是否为 www),最后两个元素相同(检查长度和内容)。我认为您无法在此处使用任何模式。

关于javascript 正则表达式或字符串方法仅匹配子域和域(减去顶级),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45280691/

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