`

java正则表达式

阅读更多
package demo.java.regex;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * User: liuwentao
 * Date: 2011-4-15 11:18:14
 * <p/>
 * 说明:
 */
public class RegexUtils {

    public static void main(String[] args) {
        RegexUtils.checkEmail("liuwentao@gmail.com");
    }

    /**
     * 验证 email是否有效
     * @param mail
     * @return
     */
    public static boolean checkEmail(String mail) {
        String regex = "\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*";
        return regexMatch(regex,mail);
    }

    /**
     * 通用是否匹配方法
     * @param regex
     * @param input
     * @return
     */
    public static boolean regexMatch(String regex,CharSequence input){
        Pattern p = Pattern.compile(regex);
        Matcher m = p.matcher(input);
        boolean b = m.find();
        System.out.println("b=" + b + ", input=" + input + ", regex=" + regex);
        return b;
    }
}



类似的还有:

^[a-z]+$  //匹配由26个英文字母的小写组成的字符串
^[A-Z]+$  //匹配由26个英文字母的大写组成的字符串
^[A-Za-z]+$  //匹配由26个英文字母组成的字符串
^[A-Za-z0-9]+$  //匹配由数字和26个英文字母组成的字符串
^\w+$  //匹配由数字、26个英文字母或者下划线组成的字符串
[\u4e00-\u9fa5]   //匹配中文字符的正则表达式:
(.*)(\.jpg|\.bmp)$   //只能是jpg和bmp格式
^\d{4}\-\d{1,2}-\d{1,2}$  //只能是2004-10-22格式
^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$  //匹配email地址
^[a-zA-z]+://匹配(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$  //匹配url


正则表达式--验证手机号码:13[0-9]{9}
实现手机号前带86或是+86的情况:^((\+86)|(86))?(13)\d{9}$
电话号码与手机号码同时验证:(^(\d{3,4}-)?\d{7,8})$|(13[0-9]{9}) 
提取信息中的网络链接:(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]*
分享到:
评论

相关推荐

    java正则表达式.zip

    Java正则表达式是Java编程语言中用于处理字符串的强大工具,它基于模式匹配的概念,能够高效地进行文本搜索、替换和解析。在Java中,正则表达式主要通过`java.util.regex`包来实现,提供了Pattern和Matcher两个核心...

    java正则表达式匹配工具

    Java正则表达式匹配工具是IT领域中一种强大的文本处理工具,它利用正则表达式(Regular Expression)的规则来查找、替换或者提取文本中的特定模式。正则表达式是一种特殊的字符序列,能够帮助程序员或者用户高效地...

    java正则表达式验证IP地址

    Java正则表达式验证IP地址 Java正则表达式验证IP地址是指使用Java语言中的正则表达式来验证IP地址是否符合标准。IP地址是指在网络通信中用来标识设备的地址,它是一种逻辑地址,通过它可以找到网络中的设备。在...

    java 正则表达式应用jar包 regex-smart.jar

    Java正则表达式是编程语言Java中的一个强大工具,它用于模式匹配、数据验证和文本检索替换。在Java中,正则表达式是通过java.util.regex包提供的接口和类来实现的。`regex-smart.jar`这个库显然是为了简化开发者在...

    JAVA 正则表达式(超详细)

    JAVA 正则表达式(超详细) JAVA 正则表达式是 Java 语言中的一种模式匹配技术,用于字符串模式匹配和字符串模式替换。Java 1.40 版本引入了 java.util.regex 包,提供了对正则表达式的支持。 1. 正则表达式的引擎...

    使用Java正则表达式分析处理日志

    本篇将围绕“使用Java正则表达式分析处理日志”这一主题,探讨如何利用Java的正则表达式功能来提取、过滤和操作日志数据。 首先,我们需要理解正则表达式的基本概念。正则表达式(Regular Expression)是一种模式...

Global site tag (gtag.js) - Google Analytics