QQ登录

只需要一步,快速开始

APP扫码登录

只需要一步,快速开始

查看: 2600|回复: 0

[HTML/CSS/JS] 如何判断url中只包含qq.com的正确方法

[复制链接]

等级头衔

积分成就    金币 : 2861
   泡泡 : 1516
   精华 : 6
   在线时间 : 1322 小时
   最后登录 : 2025-10-13

丰功伟绩

优秀达人突出贡献荣誉管理论坛元老活跃会员

联系方式
发表于 2021-5-11 11:23:47 | 显示全部楼层 |阅读模式
示例:4 m; e! K9 M' j$ Z8 {, u" ^/ a$ i* `
http://www.qq.com  // 通过
http://www.qq.com.cn  // 不通过
http://www.qq.com/a/b  // 通过
http://www.qq.com?a=1  // 通过
http://www.123qq.com?a=1  // 不通过
使用下则的方法:  G' \8 b2 [9 ]" W# y
function check(url){
  if(/\/\/w+\.qq\.com[^.]*$/.test(url)){
    return true;
  }else{
    return false;
  }

}
check('http://www.qq.com')
// true

check('http://www.qq.com.cn')
// false

check('http://www.qq.com/a/b')
// true

check('http://www.qq.com?a=1')
// true

check('http://www.123qq.com?a=1')
// false
      这个正则很简单,包含 .qq.com 就可以,但是有一种情况,如果域名不是包含 qq.com 而仅仅是参数后面包含了 qq.com 怎么办?例如 http://www.baidu.com?redirect=http://www.qq.com/a
7 l! |9 M* r, f! X* T
check('http://www.baidu.com?redirect=http://www.qq.com/a')
// true
      如何排除这种情况?
# a( |! H% @7 c, ?/ {, v5 P3 |
function check(url){
  if(/^https?:\/\/w+\.qq\.com[^.]*$/.test(url)){
    return true;
  }else{
    return false;
  }

}
check('http://www.qq.com')
// true

check('http://www.qq.com.cn')
// false

check('http://www.qq.com/a/b')
// true

check('http://www.qq.com?a=1')
// true

check('http://www.123qq.com?a=1')
// false

check('http://www.baidu.com?redirect=http://www.qq.com/a')
// false
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|paopaomj.COM ( 渝ICP备18007172号|渝公网安备50010502503914号 )

GMT+8, 2025-10-15 02:04

Powered by paopaomj X3.5 © 2016-2025 sitemap

快速回复 返回顶部 返回列表