簡體   English   中英

在正則表達式中轉義@字符

[英]Escape @ character in a Regex

我正在使用1000hz引導程序驗證程序來驗證電子郵件輸入,但無法在正則表達式@轉義'@'字符@ 有人有主意嗎?

我嘗試了@@,@('@')甚至十六進制代碼(@)。 十六進制工作正常,直到我將Google Chrome更新到V53,現在它不再有效

這是我的輸入:

<input type="text" pattern="^[a-zA-Z0-9\.\_%+-]+&#64;[a-zA-Z0-9\.\-]+\.[a-zA-Z]{2,4}" required data-error="Enter a valid email address" name="contractor-email" class="form-control" placeholder="e.g. smith.mike@smith.com" />

此外,Chrome還會拋出以下錯誤消息:validator.min.js:94模式屬性值^ [a-zA-Z0-9 ._%+-] + @ [a-zA-Z0-9 .-] +。[ a-zA-Z] {2,4}不是有效的正則表達式:未捕獲的語法錯誤:無效的正則表達式:/^[a-zA-Z0-9._%+-]+@[a-zA-Z0- 9 .-] +。[a-zA-Z] {2,4} /:無效的轉義

提前致謝。

我不知道這是否是最佳做法,但是使用@(“ @”)

因此事實證明,錯誤並非出自“ @”符號,而是我在正則表達式第一個元素中轉義字符的方式。 以下正則表達式有效: ^[a-zA-Z0-9%+-\\._]+&#64;[a-zA-Z0-9\\.\\-]+\\.[a-zA-Z]{2,4}

感謝您的幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM