Javascript SoundCloudURL的正则表达式
我只想将我的url与此url匹配 所有可能的组合,如无www的www、http、https 基本上任何与soundcloud音乐URL匹配的输入URL,如 第一部分:-(http,https)Javascript SoundCloudURL的正则表达式,javascript,regex,Javascript,Regex,我只想将我的url与此url匹配 所有可能的组合,如无www的www、http、https 基本上任何与soundcloud音乐URL匹配的输入URL,如 第一部分:-(http,https) 第二部分:-只允许带“-”的字母数字 第三部分:-只允许带“-”的无韵文 到目前为止,我已经尝试过这个正则表达式: /^https?:\/\/(soundcloud\.com|snd\.sc)\/(.*)$/ 请帮助一个选项是从JavaScript创建一个新的锚元素,将URL分配给href属性,然后检
第二部分:-只允许带“-”的字母数字
第三部分:-只允许带“-”的无韵文 到目前为止,我已经尝试过这个正则表达式:
/^https?:\/\/(soundcloud\.com|snd\.sc)\/(.*)$/
请帮助一个选项是从JavaScript创建一个新的锚
元素,将URL分配给href
属性,然后检查该锚的主机
属性:
函数检查URL(输入){
var url=document.createElement('a');
url.href=输入;
返回url.host==“soundcloud.com”| | url.host==“snd.sc”;
}
console.log(检查URL(“https://soundcloud.com/mazzikafree/wegz-molotof-dorak-gai-2020"));
console.log(检查URL(“https://snd.sc/mazzikafree/wegz-molotof-dorak-gai-2020"));
console.log(检查URL(“http://www.google.com"));
我想你可能忘记了在正常的斜杠
字符之前的反斜杠
。
试试这个:
^https?:\/\/(soundcloud.com|snd.sc)\/(.*)$
试试这个:
^https?:\/\/(soundcloud.com|snd.sc)\/(.*)$
var re=/^(https?:\/\/)?(www\)?(soundcloud\.com | snd\.sc)\/*$/
我测试了以下内容:
如果需要HTTP说明符,则考虑使用
var re=/^https?:\/\/(www.)?(soundcloud\.com | snd\.sc)\/*$/
您可以匹配soundcloud.com或snd.sc,然后是一个重复模式,匹配一个/
,然后是1+个单词字符
单词chars部分本身也有一个与-
和1+单词chars匹配的重复部分
如果您只想匹配字母数字,您可以使用[a-zA-Z0-9]
而不是\w
,后者也可以匹配\u
^https?:\/\/(?:soundcloud\.com|snd\.sc)(?:\/\w+(?:-\w+)*)+$
解释
匹配协议并选择soundcloud或snd^https?:\/\/(?:soundcloud.com | snd\.sc)
非捕获组(?:
匹配\/\w+
和1+字字符/
重复0+次匹配(?:-\w+*
和1+字字符-
关闭组并重复1+次,以匹配至少一个)+
零件/
字符串结尾$
是的,正则表达式应该可以在javascript上工作。它说是语法错误。我应该如何在javascipt中使用?。另外,如果中间部分包含“-”,该怎么办?嗨,蒂姆,我们只是在这里检查域吗?。或者我们正在检查完整的URL。Tim,想检查输入的URL是否与我给出的soundcloud URL格式匹配。好的……我已经更新了我的答案,使其更加明显。Tim,请看一下问题。它说输入URL应该和声音云URL的格式匹配(我已经指定)。你只是在检查域名。你的答案通过了这个案例:这不是一个有效的。请先参考格式。然后可能是由于其他原因。在这里你可以看到它被测试过。还要确保删除
^
字符前面的斜杠
!您好,请检查以下内容:***9348*$\\\\\\*kafree/wegz-molotof-dorak-gai-2020,这不是一个有效的案例,您的答案在此返回一个匹配项。请阅读URL的格式(第一部分,第二部分,第三部分)啊,我明白了:试试这个^https:\/\/(soundcloud.com\snd\.sc)(\/?\w+-\w+)*$
你还忘了在你的
字符前面加一个反斜杠。另外,我想知道,我们是否可以在youtube URL的情况下也这样做?。