function check(v)
{
if(v.match(/^\d+$/)) return true
else {
alert("输入必须全是数字")
return false
}
}
</script>
<form>
<input type="text" name="txt" />
<input type="submit" onclick="return check(this.form.txt.value)" />
</form>
(?<=>)[^<>]+(?=<)
假如html标签里面有一句:
String a = "<style type=\"text/css\">div \n" +
"{ margin: 0padding: 0outline: 0}</style>"
我如何把这一句取出来呢,包括标签。
用正则表达式:<style([\\s\\S]*)</style>
扩展资料:正则表达式匹配HTML标签
方法一:
var str = '<p class="odd" id="odd">123</p>'
var pattern = /<\/?[a-zA-Z]+(\s+[a-zA-Z]+=".*")*>/g
console.log(str.match(pattern))
方法二:
var str = '<p class="odd" id="odd">123</p>'
var pattern = /<[^>]+>/g
console.log(str.match(pattern))
方法三:
var str = '<input type="text" value=">" name="username" />'
var pattern = /<(?:[^"'>]|"[^"]*"|'[^']*')*>/g
console.log(str.match(pattern))
说明:()表示捕获分组,()会把每个分组里的匹配的值保存起来,使用$n(n是一个数字,表示第n个捕获组的内容)
(?:)表示非捕获分组,和捕获分组唯一的区别在于,非捕获分组匹配的值不会保存起来
没有引用的需求的话,采用非捕获性分组,更为简洁;
方法四:
var str = '<input type="text" value=">" name="username" />'
var pattern = /<(?:[^"'>]|(["'])[^"']*\1)*>/g
console.log(str.match(pattern))
</script>
具体的正则表达式最好学习一下:
http://www.w3school.com.cn/jsref/jsref_obj_regexp.asp
然后验证的函数可以这样,比如验证字母的:
function isAlphabet(val){var ptn = /\w+/g
return ptn.test(val)
}
然后需要和input关联起来,那就要监听DOM事件,或者表单提交的时候统一检查了。