Lengzihaohong

学无止境(专注于DotNet技术)
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

常用正则表达式(收集)及使用方法

Posted on 2007-03-29 13:46  神话  阅读(156)  评论(0编辑  收藏  举报
 

电子邮件:
"^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$"

//日期格式yyyy/mm/dd
/^(\d{4})/(0\d{1}|1[0-2])/(0\d{1}|[12]\d{1}|3[01])$/;

"^\\d+$"  //非负整数(正整数 + 0)
"^[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+)?$"  //浮点数

验证汉字:^[\u4e00-\u9fa5]+$
身份证:^(\d{18}|\d{15})$
国内电话或手机:(((\(\d{3,4}\))|(\d{3,4}-))\d{7,8})|\d{11}

------------------------------------------------------

正则表达式的日期验证

"^\\d{4}[\\-\\/\\s]?(((([13578])|(1[02]))\\-(([0-9])|([1-2][0-9])|(3[01])))|((([469])|(11))\\-(([0-9])|([1-2][0-9])|(30)))|(2\\-(([0-9])|([1-2][0-9])))) (([0]?[1-9]|1[0-2])(:)([0-5][0-9]))$"

 

 

or

 

^\\d{4}[\\-\\/\\s]?((((0[13578])|(1[02]))\\-(([0-2][0-9])|(3[01])))|(((0[469])|(11))\\-(([0-2][0-9])|(30)))|(02\\-[0-2][0-9])) (([0]?[1-9]|1[0-2])(:)([0-5][0-9]))$"

 

long or short

----------------------------------------------------

--^为匹配输入字符串开始的位置

--[^]为反向字符集--匹配未包含的任何字符。
----------------------------------------------------
正则表达式的使用方法:
 // Create a new Regex object.
    Regex r = new Regex("abc");
    // Find a single match in the string.
    Match m = r.Match("123abc456");
    if (m.Success)
    {
        // Print out the character position where a match was found.
        // (Character position 3 in this case.)
        Console.WriteLine("Found match at position " + m.Index);
    }
具体用法参考msdn中的相关内容