我有這樣的代碼,它看起來正常的,是很基本的,但我不能讓它工作:的Javascript簡單的正則表達式不起作用
function checkValid(elem){
var abc = elem.value;
var re = "/[0-9]/";
var match = re.test(abc);
alert(match);
}
它匹配0和9,而不是1到8 ,這裏有什麼問題?謝謝。
我有這樣的代碼,它看起來正常的,是很基本的,但我不能讓它工作:的Javascript簡單的正則表達式不起作用
function checkValid(elem){
var abc = elem.value;
var re = "/[0-9]/";
var match = re.test(abc);
alert(match);
}
它匹配0和9,而不是1到8 ,這裏有什麼問題?謝謝。
使用\ d匹配一個數字,使之成爲正規expresison,而不是一個字符串:
var abc = elem.value;
var re = /\d/;
var match = re.test(abc);
alert(match);
re
是一個字符串,而不是RegExp對象。
你需要使用正則表達式的文字,而不是一個字符串,像這樣:
var re = /[0-9]/;
而且,這會爲一個包含若干個字符串中的任何地方的任何字符串返回true。
你可能想將其更改爲
var re = /^[0-9]+$/;
嘗試刪除雙引號...
var re = /[0-9]/;
謝謝!現在它工作:) – bah 2010-05-16 23:36:25