正则表达式相关
1. RequiredFieldValidator:检查用户是否输入;
2. CompareValidator:检查两个表单输入项的输入信息是否存在某种指定关系,比如大、等于等;可用验证两个密码输入是否相同
3. RangeValidator:检查用户输入是否在某一指定范围;
4. RegularExpressionValidator:检查用户输入是否符合某一指定的正则表达式要求;
5. CustomValidator: 检查用户输入是否符合开发者指定的验证逻辑规则。
本文的目的不是在于讨论以上所有控件的用法,如果希望了解其他控件,可以参看:
http://samples.gotdotnet.com /quickstart /aspplus/doc /webvalidation.aspx。
//只能输入1-99的数字
//^+?(([1-9]\d?)|(100)|(0))$
var parnt1 = /^(([1-9]\d?)|(99)|(1))$/;
if (!parnt1.exec($("#txtTaskNum").val())) {
alert("请输入任务发布次数!");
return false;
}
var parnt = /^[1-9]\d*(\.\d+)?$/;
if (!parnt.exec($("#txtPrice").val())) {
alert("输入数字格式错误大于0都可以!");
return false;
}
var parnt = /^\d*(?:\.\d{0,1})?$/;//非负整数( 小数也可以。测试可用)
^\d+$
//非负整数(正整数 + 0)
^\d+(\.{0,1}\d+){0,1}$ //非负数.小数也可以
^\d+(\.\d+)?$
//小数点 后可有1位或n位
^\d+(\.\d{2})?$
//小数点 后可有2位
\d+
//只可输入数字
^[0-9]*[1-9][0-9]*$
//正整数
^((-\d+)(0+))$
//非正整数(负整数 + 0)
^-[0-9]*[1-9][0-9]*$ //负整数
^-?\d+$
//整数
^\d+(\.\d+)?$
//非负浮点数(正浮点数 + 0)
^(([0-9]+\.[0-9]*[1-9][0-9]*)([0-9]*[1-9][0-9]*\.[0-9]+)([0-9]*[1-9][0-9]*))$ //正浮点数
^((-\d+(\.\d+)?)(0+(\.0+)?))$ //非正浮点数(负浮点数 + 0)
^(-(([0-9]+\.[0-9]*[1-9][0-9]*)([0-9]*[1-9][0-9]*\.[0-9]+)([0-9]*[1-9][0-9]*)))$ //负浮点数
^(-?\d+)(\.\d+)?$ //浮点数
^[A-Za-z]+$
//由26个英文字母组成的字符串
^[A-Z]+$
//由26个英文字母的大写组成的字符串
^[a-z]+$
//由26个英文字母的小写组成的字符串
^[A-Za-z0-9]+$
//由数字和26个英文字母组成的字符串
^\w+$
//由数字、26个英文字母或者下划线组成的字符串
^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$ //email地址
^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$ //url
([0-9]{0,2})|(1([0-1][0-9]|20))
^\d{10,}$最少输入10个字符
^\d{15}$|^\d{17}(?:\d|x|X)$ 身份证
^([\u4e00-\u9fa5]|[0-9]|[,]|[,]){0,200}$ 最多输入200个字符
^(0?[1-9]|1[0-2])$月数
^((0?[1-9])|((1|2)[0-9])|30|31)$日数
http://blog.csdn.net/jame_peng/archive/2006/09/22/1267191.aspx
<script language="javascript" type="text/javascript">
function checkLength(txtObj){
var val=txtObj.value;
var valLength=0;
for(var ii=0;ii<val.length;ii++){
var word=val.substring(ii,1);
if(/[^\x00-\xff]/g.test(word)){
valLength+=2;
}else{
valLength++;
}
}
if(valLength>10){
document.getElementById("msg").innerHTML="输入超出字数上限";
}
}
</script>
<div>
<div style="color:Red;"><%= err %> </div>
<div id="msg" style="color:red;font-size:12px;"></div>
<table id="tb_addlinkus" width="75%">
<tr>
<td>
标题:
</td>
<td>
<input id="txt_title" type="text" runat="server" value="" style="width: 471px" maxlength="30" οnkeyup="checkLength(this)" />
</td>
</tr>
是否是中文
using System.Text;
using System.Text.RegularExpressions;
public partial class Default2 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Regex re = new Regex("^[,.,。?'“”‘’]|[\u4e00-\u9fa5]");
for (int j = 0; j < content.Length - 1; j++)
{
if (re.IsMatch(content.Substring(j, 1)))//如果是中文
{
sbcontent += content.Substring(j, 1);
}
}
if (sbcontent.Length > 360)
{
sbcontent = " " + sbcontent.Substring(0, 360).Trim() + "……";
}
//Regex re = new Regex(@"^[\u4e00-\u9fa5]+$");
//Regex re = new Regex("^[,.,。?'“”‘’]|[\u4e00-\u9fa5]");标点也出来
//Response.Write("<script>alert(' " +re.IsMatch("是非功过")+ " ')</script>");
js最新手机号码、身份证正则表达式
身份证正则:
//身份证正则表达式(15位)
isIDCard1=/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/;
//身份证正则表达式(18位)
isIDCard2=/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{4}$/;
身份证正则合并:(^\d{15}$)|(^\d{17}([0-9]|X)$)
最新手机号码正则表达式:
var tel = $("#telNo").val(); //获取手机号
var telReg = !!tel.match(/^(0|86|17951)?(13[0-9]|15[012356789]|17[678]|18[0-9]|14[57])[0-9]{8}$/);
//如果手机号码不能通过验证
if(telReg == false){
}
其他
提取信息中的网络链接:(h|H)(r|R)(e|E)(f|F) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?
提取信息中的邮件地址:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
提取信息中的图片链接:(s|S)(r|R)(c|C) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?
提取信息中的IP地址:(\d+)\.(\d+)\.(\d+)\.(\d+)
提取信息中的中国手机号码:(86)*0*13\d{9}
提取信息中的中国固定电话号码:(\(\d{3,4}\)|\d{3,4}-|\s)?\d{8}
提取信息中的中国电话号码(包括移动和固定电话):(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14}
提取信息中的中国邮政编码:[1-9]{1}(\d+){5}
提取信息中的中国身份证号码:\d{18}|\d{15}
提取信息中的整数:\d+
提取信息中的浮点数(即小数):(-?\d*)\.?\d+
提取信息中的任何数字 :(-?\d*)(\.\d+)?
提取信息中的中文字符串:[\u4e00-\u9fa5]*
提取信息中的双字节字符串 (汉字):[^\x00-\xff]*