慕尼黑8549860
2019-03-01 23:35:16
const pattern = ''pattern.test('xxxx') // falsepattern.test('xxxix') // truepattern.test('iiix') // true// 規(guī)則:// 1. 可以有0-3個(gè)連續(xù)的x,每個(gè)x前面可能有0-3個(gè)i// 2. 不能有4個(gè)連續(xù)的x請問這題如何解?
2 回答

慕的地8271018
TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超4個(gè)贊
寫一起太麻煩,分開寫
let p1 = /x{4,}/
let p2 = /i{0,3}x/
let str = 'xxxx'
if(!p1.test(str) && p2.test(str)){
console.log('驗(yàn)證通過')
}else{
console.log('驗(yàn)證失敗')
}
試試

Cats萌萌
TA貢獻(xiàn)1805條經(jīng)驗(yàn) 獲得超9個(gè)贊
可以換種思路 有4個(gè)x或者i超過4個(gè)就通過然后取反
const pattern = /x{4}|i{4,}x/
console.log(!pattern.test('xxxxx'))// false
console.log(!pattern.test('xxxix'))// true
console.log(!pattern.test('iiix'))// true
添加回答
舉報(bào)
0/150
提交
取消