java中正则表达式的使用

一、判断字符串中是否含有某段字符串

Pattern.matches(String regex, String input)

示例

import java.util.regex.Pattern;

public class test {
     public static void main(String[] args) {
         String url = "www.baidu.com";
         String regex = "(.*)baidu(.*)";
         System.out.println(Pattern.matches(regex, url));
         //结果为true
     }
}

二、替换字符串的部分

replaceAll(String regex, String replacement)

示例

public class test {
     public static void main(String[] args) {
         
         String url = "www.baidu.com";

         String regex = "(\w+)";
         String result2 = url.replaceAll(regex, "123");
         //结果为123.123.123
//如果想保留部分内容,那就用()表示那部分,替换部分用$表示 //如果有多个部分需要保留,那用多个$表示,并跟序号,表示第几个 //示例 String regex2 = "www\.(.*)\.(.*)"; String result = url.replaceAll(regex2, "$1,$2"); //结果为baidu,com } }

三、找出字符串的所有符合条件的字符串

示例

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

public class test {
     public static void main(String[] args) {
         //找出百度网址中全部由小写英文构成的字符串
        String url = "www.baidu.com";
        Pattern p = Pattern.compile("([a-z]+)");
        Matcher m = p.matcher(url);
        while (m.find()) {
            System.out.println(m.group());
            }
        /**
         * 结果
         * www
         * baidu
         * com
         * 
         */
     }
}
原文地址:https://www.cnblogs.com/wei-jing/p/10463395.html