![](/img/trans.png)
[英]Javascript: validating form fields by regular expression and using if/else statement
[英]regular expression for validating fields
我正在嘗試驗證:
編輯:
var regex = '(?!0)\d+(?:\.\d+)?$';
function getValue() {
// passing value 0009.99 and 0009.00 and 100
return document.getElementById("myinput").value;
}
function test() {
alert(regex.test(getValue()));
}
function match() {
alert(getValue().match(regex));
}
您的第一個和第二個似乎工作正常,第三個可以使用以下正則表達式實現:
/(?!0)\d+\.\d+$/
它首先期待零(跳過它們),然后匹配任意數量的數字,后跟一個點和更多數字。 如果希望數字是可選的,則可以將加號' +
'替換為星號' *
'。
編輯 :
如果要允許整數,則可以使用此正則表達式:
/(?!0)\d+(?:\.\d+)?$/
這使得該點之后的點和數字是可選的。
順便說一句:您的jsfiddle並沒有幫助回答。
編輯2 :
要使用引號創建正則表達式,必須使用以下語法:
var regex = new RegExp('(?!0)\d+(?:\.\d+)?$');
編輯3 :
我忘了提一下,您需要加倍轉義反斜杠,應該是:
var regex = new RegExp('(?!0)\\d+(?:\\.\\d+)?$');
現在,它應該可以直接在您的代碼中工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.