android常用正则表达式

本文介绍了一个Android平台上的实用工具类,提供了一系列常用的正则表达式用于验证手机号、座机号、邮箱、URL、汉字、用户名及IP地址等。这些工具可以直接复制到项目中使用,提高开发效率。

在日常开发中,经常要验证IP,号码,url等是否正确,今天给大家推荐一个android 实用类,直接copy到项目就能立即使用

public class RegularUtils {

    private RegularUtils() {

        throw new UnsupportedOperationException("u can't fuck me...");

    }


    // 验证手机号(现在手机号码水太深,来个短小粗暴点了只能)

    private static final String REGEX_MOBILE = "^[1]\\d{10}$";


    // 验证座机号,正确格式:xxx/xxxx-xxxxxxx/xxxxxxxx

    private static final String REGEX_TEL = "^0\\d{2,3}[- ]?\\d{7,8}";


    // 验证邮箱

    private static final String REGEX_EMAIL = "^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$";

 

           // 验证url

    private static final String REGEX_URL = "http(s)?://([\\w-]+\\.)+[\\w-]+(/[\\w-./?%&=]*)?";

    

            // 验证汉字

    private static final String REGEX_CHZ = "^[\\u4e00-\\u9fa5]+$";

    

            // 验证用户名,取值范围为a-z,A-Z,0-9,"_",汉字,不能以"_"结尾,用户名必须是6-20

    private static final String REGEX_USERNAME = "^[\\w\\u4e00-\\u9fa5]{6,20}(?<!_)$";

   

             // 验证IP

    private static final String REGEX_IP = "((2[0-4]\\d|25[0-5]|[01]?\\d\\d?)\\.){3}(2[0-4]\\d|25[0-5]|[01]?\\d\\d?)";


    //If u want more please visit http://toutiao.com/i6231678548520731137/


    /**

     * @param string 待验证文本

     * @return 是否符合手机号格式

     */

    public static boolean isMobile(String string) {

        return isMatch(REGEX_MOBILE, string);

    }


    /**

     * @param string 待验证文本

     * @return 是否符合座机号码格式

     */

    public static boolean isTel(String string) {

        return isMatch(REGEX_TEL, string);

    }


    /**

     * @param string 待验证文本

     * @return 是否符合邮箱格式

     */

    public static boolean isEmail(String string) {

        return isMatch(REGEX_EMAIL, string);

    }


    /**

     * @param string 待验证文本

     * @return 是否符合网址格式

     */

    public static boolean isURL(String string) {

        return isMatch(REGEX_URL, string);

    }


    /**

     * @param string 待验证文本

     * @return 是否符合汉字

     */

    public static boolean isChz(String string) {

        return isMatch(REGEX_CHZ, string);

    }


    /**

     * @param string 待验证文本

     * @return 是否符合用户名

     */

    public static boolean isUsername(String string) {

        return isMatch(REGEX_USERNAME, string);

    }


    /**

     * @param regex  正则表达式字符串

     * @param string 要匹配的字符串

     * @return 如果str 符合 regex的正则表达式格式,返回true, 否则返回 false;

     */

    public static boolean isMatch(String regex, String string) {

        return !TextUtils.isEmpty(string) && Pattern.matches(regex, string);

    }

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值