收集各種條件的用戶輸入后,例如以。。開(kāi)始 : /(^@)/以。。結(jié)束 : /(@$)/包含: /@/不包含為了在用戶輸入多個(gè)條件時(shí)制作一個(gè)正則表達(dá)式,我將它們組合起來(lái),"|"如果1和2給定了/(^@)|(@$)/到目前為止,此方法有效,但是,我無(wú)法正確確定,條件4的正則表達(dá)式應(yīng)該是什么?并以這種方式結(jié)合正則表達(dá)式工作嗎?更新:@(用戶輸入)對(duì)于兩個(gè)條件將是不相同的,并且并非所有四個(gè)條件都始終存在,但是它們可以同時(shí)存在,并且將來(lái)我可能需要更多條件,例如“是”和“不是”等。因此,我您是否更想知道這種方法是否可以擴(kuò)展?也可能存在用戶輸入清理的問(wèn)題,因此正則表達(dá)式可以正確地轉(zhuǎn)義,但是現(xiàn)在可以忽略。
3 回答

MMTTMM
TA貢獻(xiàn)1869條經(jīng)驗(yàn) 獲得超4個(gè)贊
如果字符串不能包含@,則每個(gè)字符都必須是除@以下字符之外的另一個(gè)字符:
/^[^@]*$/
這將匹配任何不包含的任何長(zhǎng)度的字符串@。
另一種可能的解決方案是將的布爾結(jié)果取反/@/。

PIPIONE
TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超9個(gè)贊
1 + 2 + 4條件:開(kāi)始|結(jié)束,但不在中間
/^@[^@]*@?$|^@?[^@]*@$/
幾乎相同:
/^@?[^@]*@?$/
但這匹配任何不帶@的字符串,示例'我的名字是hal9000'
- 3 回答
- 0 關(guān)注
- 575 瀏覽
添加回答
舉報(bào)
0/150
提交
取消