我需要编写一些匹配以下模式的正则表达式,使用 http://www...
。
http://www.domain.com/然后是它后面的任何内容。我需要它匹配是否有“http://”、“www.”或任何尾随页面。从字面上看,我希望用户输入的只是 domain.com。所以我想通过匹配 http://www.domain.com/ 来抛出错误...
这是我想出的:
new RegExp("^(http[s]?:\\/\\/(www\\.)?|www\\.){1}([0-9A-Za-z-\\.@:%_\+~#=]+)+((\\.[a-zA-Z]{2,3})+)(/(.)*)?(\\?(. )*)?");
但只有存在“http://”或“www.”时才会匹配。如何捕获 URL 中的尾随页面?任何页面。
最佳答案
你能不能把它反过来,让正则表达式匹配 domain.com,然后取反结果?
例如:
var foo = "domain.com";
if (! foo.match(/^[a-z0-9-]+\.[a-z]{2,6}$/)) {
// throw error
}
关于javascript - 如何为带有尾随页面的网站 url 编写正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19717272/