close

今天遇到一個問題

一個pattern裡面要擺兩個判斷,一個是開頭一定要是某字元,一個是開頭之後的字串不能包含小寫英文和其他符號

/^\// (開頭一定要是"\")

/[^A-Z0-9+-.]+/ (A-Z0-9+-.以外的符號)

但是兩個合起來就有問題了

/^\/[^A-Z0-9+-.]+/,這樣會變成判斷開頭第一個是"/"後面緊接A-Z0-9+-.以外的符號

這樣若字串是"/aAA"會match,但是"/AaA"這樣就not match了!

最後問到的解法是

/^\/.*[^A-Z0-9+-.]+/,其中.表示任意符號、*表示存在0~無限個,兩個加起來就是開頭判斷和字元判斷中間可以存在任意個自元,自然就把兩個判斷式拆開了!

特此紀錄一下。

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 dizzy03 的頭像
    dizzy03

    碎碎念

    dizzy03 發表在 痞客邦 留言(0) 人氣()