2013-10-15 46 views
0

我試圖找到這個HTML5表單驗證場景的解決方案:HTML5正則表達式模式 - 驗證對串

我有一個輸入框,wher用戶需要輸入自己的全名,如「約翰·J·瓊斯」

<input id="test" name="test" type="text" 
placeholder="Please insert your full name" 
pattern="this is where I need some help please" 
required="required" 
title="Please insert your full name as per your registration form"> 

如果輸入字段中的「某處」輸入了字符串「Jones」(或'jones'),我希望該模式可以驗證。這可能是在開始的時候,在中間的某個位置或者結尾,可以在所有小寫,大寫和小寫的組合或僅大寫形式輸入...

所以有效的投入將是:

"J.J. Jones" 
"j.j.jones" 
"Jones, John" 
"jones, john" 
"John Jones III." 
"j.jones III." 

一切正常,只要「瓊斯」在輸入的字符串中的某處。

謝謝!

+0

是否需要其他格式?或者你可以只做'input.value.indexOf('jones')> -1'? (基於'「,只要」jones「在輸入的字符串中的某處)'') – SmokeyPHP

+0

@SmokeyPHP:我認爲他正在研究輸入字段的」模式「HTML5屬性... –

+0

@Bartdude Ahh,是的..那會教我脫脂朗讀lol – SmokeyPHP

回答

1

HTML5模式是always case sensitive。你可以嘗試手動完成。我不是一個正則表達式的專家,但我想這應該做的工作,儘管是一種醜陋:

pattern=".*[j|J][o|O][n|N][e|E][s|S].*" 

或我想這將工作太(再加上,它看起來好一點):

pattern=".*[jJ][oO][nN][eE][sS].*" 
1

你可以做這樣的事情:

pattern=".*((j|J)(o|O)(n|N)(e|E)(s|S))+.*"