zoukankan      html  css  js  c++  java
  • 正则表达式

    判断对象是否符合要求,需要用到正则表达式。

    matches("正则表达式"),返回值是boolean类型

    正则表达式中的一些特殊字符:

    元字符                                              限定符                             方括号

    \d 代表0~9的数字                            {n} 出现n次                     [abc] 表示a,b或者c

    \p{Lower} 代表a~z的小写字母           {n,} 至少n次                    [a-z] 表示a~z的任何字符

    \w 代表可用作标识符的字符                {n,m} 出现n~m次

    \. 代表点字符“.

            //判断E-mail地址是否合法
            String regex="\w{1,}\@\w{1,}\.{1}\w{1,}";//正则表达,定义邮箱格式
            String str1="abc@.";
            String str2="abc@163.com";
            System.out.println(str1.matches(regex));
            System.out.println(str2.matches(regex));
            //判断字符串是否满足要求(第1位大写字母,2~4小写字母,后3位是数字)
            String regexp="\p{Upper}\p{Lower}{3}\d{3}";
            String str3="Abcd123";
            String str4="abc";
            System.out.println(str3.matches(regexp));
            System.out.println(str4.matches(regexp));
            //判断手机号的合法性
            String regex1="1[3,5,8]\d{9}";
            String str5="13012341234";
            String str6="130123412345";
            if(str5.matches(regex1)) {
                System.out.println(str5+"是合法手机号");
            }else {
                System.out.println(str5+"不是合法手机号");
            }
            if(str6.matches(regex1)) {
                System.out.println(str6+"是合法手机号");
            }else {
                System.out.println(str6+"不是合法手机号");
            }
            //判断IP地址是否合法(1.0.0.0-255.255.255.255)
            String regex2="(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|[1-9])\."
                    +"(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)\."
                    +"(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)\."
                    +"(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)";
            String str7="192.168.1.1";
            String str8="0.168.1.1";
            System.out.println(str7.matches(regex2));
            System.out.println(str8.matches(regex2));
    import java.util.regex.Pattern;
    public class Format {
        public static void main(String[] args) {
            //是否是汉字,计算个数
            //String regex3="[u4E00-u9FA5]{0,}";
            String text="pure love 左溢中国 and 夕西行";
            int amount=0;
            for(int i=0;i<text.length();i++) {//遍历字符,判断是否属于汉字编码
                boolean mc=Pattern.matches("[\u4E00-\u9FA5]{0,}",""+text.charAt(i));
                if(mc) {
                    amount++;
                }
            }
            System.out.println(amount+"个汉字");        
        }
    }

     

     

  • 相关阅读:
    css 上下居中的广法
    layui下拉框右边图标动画,不要动画
    git clone项目失败,Host key verification failed.
    layui数据表格分页加载动画,自己定义加载动画,"加载中..."
    layui数据表格排序图标被超出的表头挤出去
    layui数据表格,当数据过长出现三个...的时候,点击会弹出一个框全部显示,如何去掉这个框
    eclips 中的 svn 更新报错,被锁住解决办法
    Nginx系列3:用Nginx搭建一个具备缓存功能的反向代理服务
    正向代理和反向代理的区别
    Nginx系列2:用Nginx搭建一个可用的静态资源Web服务器
  • 原文地址:https://www.cnblogs.com/xixixing/p/7604071.html
Copyright © 2011-2022 走看看