Javascript 的 Regex 該怎麼使用, 如何做 Match 和 Replace 的動作, 語法該怎麼寫.
先來一個簡單的 HTML source
<form name="form_name">
<input type="text" name="input_name" id="id_name" value="">
</form>
抓取 Input Value
// 直接抓取 form input value
var var_value = form_name.input_name.value;
// 若欄位有 id="id_name", 則用 var var_value = getElementById('id_name');
檢查輸入值是不是數字(Match)
// 可參考: JavaScript match() Method
// stringObject.match(searchvalue)
// match 語法: variable.match(regex), return null/regex value
var score = 12; // 1.2, 1., 1, -1.2, -1, -1., -1.25, -12., -13, -133.235, 133.235
var regex = /^-?\d+\.?\d*$/;
if (score.match(regex)==null) {
alert("不是數值");
}
字串取代(Replace)
// 參考: JavaScript replace() Method
// stringObject.replace(findstring,newstring)
// replace 語法: variable.replace(regex, '要取代成什麼字')
var str = "this is a book123!";
var regex=/book\d+/gi; // 不能寫成 regex="/book\d+/gi";
alert(str.replace(regex,"test")); // 把 book123 取代成 test