2016-04-25 51 views
0

這是我的正則表達式:無效的正則表達式HTML模式

pattern="[^\!\#\$\%\^\&\*\'\|\"]{8}" 
pattern="[^!#$%^&*'|"]{8}" 

如何在我的HTML input標籤這個無效?我想這個符號在我textbox

<input placeholder="Something" type="text" required autofocus ng-model="someData" pattern="[^\!\#\$\%\^\&\*\'\|\"]{8}"> 
+0

你的正則表達式是fine..is有什麼錯誤? – rock321987

+0

是的錯誤是無效的正則表達式.. –

+0

嗯。誠實地說,我不知道如何使用jsfiddle,但是,我只想允許除下列符號之外的任何內容^!#$%^&*'| –

回答

0

的限制,我認爲它應該是pattern=\"[^!#$%^&*'|"]{8}\"

你應該逃避字面雙引號[],而不是內部。

演示:https://regex101.com/r/uP5pC6/1

+0

謝謝!但這不允許電子郵件?爲什麼?我想要允許所有內容,除了^!#$%^&*'| –

+0

我認爲這是因爲電子郵件超過8個字符。如果你想要8或更多,使用'{8,}' –

+0

nope,我試着做{8},甚至做{8,100}仍然沒有接受我的輸入,這是電子郵件 –