常用正则表达式

来源:互联网 发布:极点五笔 centos 编辑:程序博客网 时间:2024/05/02 01:45

首先附上正则表达式语法学习链接:http://msdn.microsoft.com/zh-cn/library/ae5bf541(VS.80).aspx

一、手机号码

  • 移动:134、135、136、137、138、139、150、151、157(TD)、158、159、187、188
  • 联通:130、131、132、152、155、156、185、186
  • 电信:133、153、180、189

正则表达式:

^((13[0-9])|(15[^4,\D])|(18[0,5-9]))\d{8}$
java实例:

import java.util.regex.Matcher;import java.util.regex.Pattern;public class Test {    public static void main(String[] args) {        Pattern pattern = Pattern.compile("^((13[0-9])|(15[^4,\\D])|(18[0,5-9]))\\d{8}$");        Matcher matcher = pattern.matcher("13112341234");        System.out.print(matcher.matches());//打印出true    }}
javascript实例:

<script>        var reg = /^((13[0-9])|(15[^4,\D])|(18[0,5-9]))\d{8}$/;        if (reg.test("13112341234") == true)            alert("true");//弹出提示框并显示true    </script>

二、座机号码

说明:可以匹配XXX-1234567    XXXX-12345678  XXXX-1234567等等

正则表达式:

^\d{4}-\d{8}|\d{4}-\d{7}|\d{3}-\d{8}$
java实例:

import java.util.regex.Matcher;import java.util.regex.Pattern;public class Test {    public static void main(String[] args) {        Pattern pattern = Pattern.compile("^\\d{4}-\\d{8}|\\d{4}-\\d{7}|\\d{3}-\\d{8}$");        Matcher matcher = pattern.matcher("0238-8992868");        System.out.print(matcher.matches());//打印出true    }}
javascript实例:

    <script>        var reg = /^\d{4}-\d{8}|\d{4}-\d{7}|\d{3}-\d{8}$/;        if (reg.test("0218-89929290") == true)            alert("true");//弹出提示框并显示true    </script>

三、邮箱账号

正则表达式:

^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
java实例:

import java.util.regex.Matcher;import java.util.regex.Pattern;public class Test {    public static void main(String[] args) {        Pattern pattern = Pattern.compile("^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$");        Matcher matcher = pattern.matcher("1250052380@qq.com");        System.out.print(matcher.matches());//打印出true    }}
javascript实例:

<script>        var reg = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;        if (reg.test("1250052380@qq.com") == true)            alert("true");//弹出提示框并显示true    </script>

四、邮政编码

正则表达式:

^[1-9]\d{5}(?!\d)$
java实例:

import java.util.regex.Matcher;import java.util.regex.Pattern;public class Test {    public static void main(String[] args) {        Pattern pattern = Pattern.compile("^[1-9]\\d{5}(?!\\d)$");        Matcher matcher = pattern.matcher("621000");        System.out.print(matcher.matches());//打印出true    }}
javascript实例:

    <script>        var reg = /^[1-9]\d{5}(?!\d)$/;        if (reg.test("621000") == true)            alert("true");//弹出提示框并显示true    </script>

五、用户名

说明:匹配的用户名首字符只能是“小写字母”、“大写字母”或“_”中的一种,其余可以包含“大写字母”、“小写字母”、“数字”、“_”,且长度限制在6-20个字符

正则表达式:

^[a-zA-Z_][a-zA-Z0-9_]{5,19}$
java实例:

import java.util.regex.Matcher;import java.util.regex.Pattern;public class Test {    public static void main(String[] args) {        Pattern pattern = Pattern.compile("^[a-zA-Z_][a-zA-Z0-9_]{5,19}$");        Matcher matcher = pattern.matcher("Tomcat");        System.out.print(matcher.matches());//打印出true    }}
javascript实例:

    <script>        var reg = /^[a-zA-Z_][a-zA-Z0-9_]{5,19}$/;        if (reg.test("Tomcat949") == true)            alert("true");//弹出提示框并显示true    </script>

六、密码

说明:首字符必须是“大写字母”或“小写字母”,其余可以是“大写字母”、“小写字母”、“数字”、“特殊符号”,并且长度为6-18位

正则表达式:

^[a-zA-Z][a-zA-Z0-9~!@#$%^&*()_+]{5,17}$
java实例:

import java.util.regex.Matcher;import java.util.regex.Pattern;public class Test {    public static void main(String[] args) {        Pattern pattern = Pattern.compile("^[a-zA-Z][a-zA-Z0-9~!@#$%^&*()_+]{5,17}$");        Matcher matcher = pattern.matcher("tom20@#%$^&");        System.out.print(matcher.matches());//打印出true    }}
javascript实例:

    <script>        var reg = /^[a-zA-Z][a-zA-Z0-9~!@#$%^&*()_+]{5,17}$/;        if (reg.test("tom20@#%$^&") == true)            alert("true");//弹出提示框并显示true    </script>

七、中文

说明:匹配2-10个中文

正则表达式:

^[\u4e00-\u9fa5]{2,10}$
java实例:

import java.util.regex.Matcher;import java.util.regex.Pattern;public class Test {    public static void main(String[] args) {        Pattern pattern = Pattern.compile("^[\\u4e00-\\u9fa5]{2,10}$");        Matcher matcher = pattern.matcher("爱因斯坦");        System.out.print(matcher.matches());//打印出true    }}
javascript实例:

    <script>        var reg = /^[\u4e00-\u9fa5]{2,10}$/;        if (reg.test("Tomcat949") == true)            alert("true");//弹出提示框并显示true    </script>















0 0