求一个正则 不允许出现邮箱和11位手机号 或者 不允许出现@符号和11位数字

求一个正则 不允许出现邮箱和11位手机号 或者 不允许出现@符号和11位数字

不允许出现@符号和11位数字

^(?!.*@|\d{11}$)

python解答代码如下:(如有帮助,望采纳!谢谢! 点击我这个回答右上方的【采纳】按钮)

import re
s = "12345678901"
if re.search(r'^(?!.*@|\d{11}$)',s):
    print("没有出现@符号或11位数字")
else:
    print("出现了@符号或11位数字")

import re
# 正则匹配手机号
def judge_phone_number(s):
    a = re.findall('(13\d{9}|14[5|7]\d{8}|15\d{9}|166{\d{8}|17[3|6|7]{\d{8}|18\d{9})', s)
    return a
def judge_mail(s):
    a = re.match("^[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+){0,4}@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+){0,4}$", s)
    return a
s=input('请输入')
t1=judge_phone_number(s)
t2=judge_mail(s)
if len(t1)>0 or t2:
    print('包含手机号或邮箱')
else:
    print('无手机号或邮箱')

img

img

img

匹配手机 /^1[3-9][0-9]{9}$/
匹配邮箱 /^(\w|-)+(.(\w|-){1,30}){0,2}@[A-z0-9]{1,10}(.[A-z]{2,3}){1,2}$/
分两次匹配,匹配结果出来都是false就是你满足的条件

正则验证取非就好了
// 判断是否为邮箱地址
function isEmail(emailStr) {
var reg = /[\d\w._-]+@[\d\w]+.[\w]+/;
return reg.test(emailStr);
}

// 判断是否为手机号
function isMobilePhone(phone) {
var reg = /^1[358]\d{9}$/;
return reg.test(phone);
}
参考如下
JS正则表达式验证手机号和邮箱 - 海角之上 - 博客园 一、验证手机号 这里的重点是这个正则表达式: 这个表达式的意思是: 1--以1为开头; 2--第二位可为3,4,5,7,8,中的任意一位; 3--最后以0-9的9个整数结尾。 本来只容13,15,17 https://www.cnblogs.com/sky6699/p/10563810.html

正的不会写就写反的呗 是11位数字或者@符号的报错

(^(\d{11}))&(^@)
有帮助望采纳