>  기사  >  백엔드 개발  >  javascript - @의 발생을 금지하기 위해 숫자, 문자, 밑줄 및 밑줄이 필요한 정규식을 작성하는 데 도움을 줄 수 있는 사람이 있습니까?

javascript - @의 발생을 금지하기 위해 숫자, 문자, 밑줄 및 밑줄이 필요한 정규식을 작성하는 데 도움을 줄 수 있는 사람이 있습니까?

WBOY
WBOY원래의
2016-12-01 01:27:481201검색

<code class="javascript">
var reg = /^[\w]{6,12}$/ ;  

if(password.match(reg)){
    alert("The password is valid!");
} 
</code>

现在要求 长度为6-16 位字符,可以为“数字/字母/中划线/下划线” ,不能为全下划线和全中划线和全数字

回复内容:

<code class="javascript">
var reg = /^[\w]{6,12}$/ ;  

if(password.match(reg)){
    alert("The password is valid!");
} 
</code>

现在要求 长度为6-16 位字符,可以为“数字/字母/中划线/下划线” ,不能为全下划线和全中划线和全数字

<code>let reg = /^(?!^-+$)(?!^_+$)(?!^\d+$)[\d|a-zA-Z|\-|_]{6,16}$/;

let test = ['1234567', '-------', '_______', 'cdwcdcd23@'];
test.map(str => console.log(reg.test(str)));</code>

/^(w|_|-)+$/.test("abcA5557_78-")

一个正则做不到吧,分开写吧。/^[w-]{6-12}$//^d{12}$/ ...

/^(?!(-|_)\1{5,15}$)(?!\d{6,16}$)[-\w]{6,16}$/

<code>var reg = /^(?!(-|_)\1{5,15}$)(?!\d{6,16}$)[-\w]{6,16}$/;
undefined
reg.test('1234567'); //全数字
false
reg.test('_______');//全下划线
false
reg.test('-------');//全中划线
false
reg.test('____---');
true
reg.test('abcddd');
true
reg.test('__12__---aa');
true</code>

正则不是很会 尴尬

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.