簡體   English   中英

JavaScript正則表達式驗證不起作用

[英]Javascript regexp validation not working

我正試圖使我的正則表達式工作,但我運氣不高。

我想檢查輸入的字符串是否為6個數字和1個字符(123123A),沒有空格,沒有破折號。 我的正則表達式不匹配,盡管我認為我輸入的是有效字符串。

誰能指出我的問題在哪里?

var userString = "123123A";
if( /^d{6}[a-zA-Z]{1}$/.test(userString) ){
  alert("Correct format");              
}
else{
  alert("Incorrect format");                    
}

首先,您的正則表達式語法不正確,您想使用標記\\d來匹配數字,而不是將文字字符d匹配六次 您也可以從字符類中刪除{1} ,在這里不必使用。

if (/^\d{6}[a-zA-Z]$/.test(userString)) { ...

您沒有檢查輸入元素的值:

var userString = document.getElementById("username");

應該

var userString = document.getElementById("username").value;

而且,就像hwnd指出的那樣,您在模式中缺少反斜杠:

/^\\d{6}[a-zA-Z]$/

暫無
暫無

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

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