現在我正在使用多個條件來通過名稱使用通配符(*)來驗證輸入的有效性。由於我有多個「如果」與內部「if」語句我試圖使用正則表達式來驗證我的輸入。我想在前端和後端都使用這個表達式。 欣賞有人能幫忙。用逗號分隔的名字搜索的正則表達式
驗證規則是遵循
- 輸入是姓,名,即由逗號分隔。
- 使用通配符搜索時,必須至少有兩個字符。
- 有效通配符僅爲'*'。
- 最多可以使用兩個通配符。
- 沒有連續的通配符。
- 如果沒有通配符對最後和名字中的字符長度沒有限制。
一些有效的輸入是:
- hopkins, johns
- h, j
- ho*, jp*
- *ins, johns
- *op*, john*
一些無效的輸入是:
- hopkins johns
- h*, johns
- hop**, joh*
- h*pk*n*
如果正則表達式不會是複雜的,我們可以認爲這是有效的,否則它OK可以認爲這是無效的
- ho*in*, jo*
總之通用名稱格式爲
[*]XX[*], [*]XX[*]
where [] ==> Optional
X ==> A-Z, a-z
XX ==> length 2 or more if wild card used
如H剛剛意識到輸入,J也是有效的,即如果沒有使用通配符有性格上沒有限制。我們可以在正則表達式中添加此驗證嗎? – 2014-12-01 16:59:22