import re
#首先我们定义一个函数利用正则表达式来获取QQ号
def testQQ(qq):
pattern = re.compile('[1-9][0-9]{4,10}$')
result = pattern.match(qq)
#如果成功获取返回True
if result:
return True
#反之返回False
else:
return False
'''
通过上面的 textQQ 函数我只能得两种结果:1获取成功 2没有获取
所以我们需要下面的 ischeckQQ 函数来检查QQ号码
检查标准:
1QQ号只能为数字
2目前QQ号只有5到11位数
'''
def ischeckQQ(qq):
if testQQ(qq) == True:
return 'QQ:{} 是合法的'.format(qq)
elif qq.isdigit() == False: #QQ号我使用input函数进行输入,是以字符串形式输入
return 'QQ:{}不全为数字'.format(qq)
elif len(qq) > 11:
return '暂时还没有{}位的QQ号'.format(len(qq))
elif len(qq) < 5:
return '没有5位数以下的的QQ哦!'
else:
'QQ:{} 不合法'.format(qq) if __name__ == '__main__':
while True:
qq = input('请输入QQ:\n')
if qq == 'q':
break
print(ischeckQQ(qq))

运行程序:

请输入QQ:
7770521502
QQ:7770521502 是合法的
请输入QQ:
123
没有5位数以下的的QQ哦!
请输入QQ:
asd7704
QQ:asd7704不全为数字
请输入QQ:

用正则表达式来验证QQ号是否合法的更多相关文章

  1. js进阶正则表达式15验证身份证号(|符号的使用:var reg=/^\d{17}[\d|X]$|^\d{15}$/)(str的方法substr)

    js进阶正则表达式15验证身份证号(|符号的使用:var reg=/^\d{17}[\d|X]$|^\d{15}$/)(str的方法substr) 一.总结 1.|符号的使用:var reg=/^\d ...

  2. 请用正则表达式匹配出QQ号(假设QQ号码为5—10位);

    请用正则表达式匹配出QQ号(假设QQ号码为5—10位): 解答: ^ \d{5,10}$

  3. (转)最全正则表达式总结:验证QQ号、手机号、Email、中文、邮编、身份证、IP地址等

    什么是 RegExp? RegExp 是正则表达式(Regular expression)的缩写,作用是对字符串执行模式匹配. 通常用于格式验证.正则替换.查找子串等 各种编程语言的正则表达式基本相同 ...

  4. Day_09【常用API】扩展案例7_验证QQ号是否正确

    需求说明 请用户输入一个"QQ号码",我们来判断这个QQ号码是否正确 要求:使用方法来完成判断功能 验证规则: 1)必须是5-12位数字: 2)首位不能是0: package co ...

  5. javascript验证QQ号、邮箱和手机号码

    //验证QQ号码5-11位 function isQQ(qq) { var filter = /^\s*[.0-9]{5,11}\s*$/; if (!filter.test(qq)) { retur ...

  6. 正则表达式检测IP地址与端口号是否合法

    正则表达式检测IP地址与端口号是否合法,代码如下: 正则表达式检测IP地址 public static bool CheckAddress(string s) { bool isLegal = fal ...

  7. 正则表达式判断QQ号格式是否正确

    #正在表达式匹配QQ号格式是否正确#QQ号假如长度为5-11位,纯为数字 import rewhile 1: qq=input("请输入QQ号:") result=re.finda ...

  8. js正则表达式验证身份证号和密码

    //验证身份证号只能输入15位或者18位的身份证号 /^\d{14}[X|\d]{1}$|^\d{18}$/ig //验证只能输入字母和数字组合6到16位 /^[a-z][a-z0-9]{6,16}$ ...

  9. Android 使用正则表达式验证身份证号是否符合规则

    我国当前的身份证号分为三种: 一.15位身份证号 二.18位身份证号(前17位位数字,最后一位为字母x) 三.18为身份证号(18位都是数字) 具体验证请参考下面代码: /** * 验证身份证号是否符 ...

随机推荐

  1. 吉利WA数

  2. Hybrid App: 了解JavaScript如何与Native实现混合开发

    一.简介 Hybrid Development混合开发是目前移动端开发异常火热的新兴技术,它能够实现跨平台开发,极大地节约了人力和资源成本.跨平台开发催生了很多新的开源框架,就目前而言,在混合开发中比 ...

  3. ssm整合的登录

    新建一个web工程,主要结构如下: 数据库创建如下: 控制层的代码FormController 类 package codeRose.controller; import org.springfram ...

  4. php 环境require(): open_basedir restriction in effect 错误

    php 环境require(): open_basedir restriction in effect 错误 错误日志显示,访问脚本不在 open_basedir的限定目录里面 解决方法打开fastc ...

  5. window中php的交互模式

    1.配置php的环境变量: 测试: cmd >> php --version 2.在cmd下编写测试脚本 1)  php -r  + php测试代码: 2) php -a + Enter  ...

  6. 学习Java第一步:安装Intellij IDEA和JDK

    注:其实真正学习一门新语言的第一步并不是安装开发工具,我是C#转JAVA,有一点编程经验了,所以可以直接跳过前面几步,直接上IDE. 1.下载IntelliJ IDEA [官网] http://www ...

  7. 技术人如何利用 github+Jekyll ,搭建一个独立免费的技术博客

    上次有人留言说,技术博客是程序员的标配,但据我所知绝大部分技术同学到现在仍然没有自己的技术博客.原因有很多,有的是懒的写,有的是怕写不好,还有的是一直想憋个大招,幻想做到完美再发出来,结果一直胎死腹中 ...

  8. celery 启用worker ValueError: not enough values to unpack

    [2018-01-12 19:08:15,545: INFO/MainProcess] Received task: tasks.add[5d387722-5389-441b-9b01-a619b93 ...

  9. ndk编译出来的executable动态库入口函数的参数错乱

    早些时间用ndk编译带main入口函数的动态库,测试可运行.今天要作它用时,发现在这个入口函数并没有传入正确的参数. hello.cpp有main函数,用ndk分别编译成可执行文件和动态库文件,使两者 ...

  10. WPF 修改屏幕DPI,会触发控件重新加载Unload/Load

    修改屏幕DPI,会触发控件的Unloaded/Loaded 现象/重现案例 对Unloaded/Loaded的印象: FrameworkElement, 第一次加载显示时,会触发Loaded.元素被释 ...