java_261_正则表达式_java编程中的使用_查找_替换_分割_练习

java程序中使用正则表达式
在这里插入图片描述
//-------------------------matcher()-方法---------------
package java_261_正则表达式_java编程中的使用_查找_替换_分割_练习;

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

public class Demo01 {
public static void main(String[] args) {
//在这个字符串:asfsdf23323;是否符合指定的正则表达式\w+
//表达式对象; Pattern模式;compile编译;
Pattern p = Pattern.compile("\w+"); //这个就代表正则表达式;写入\w+;注意:在java中\变2个
//创建(Matcher)匹配对象
Matcher m = p.matcher(“asfsdf23323”);//Matcher匹配器;"asfsdf23323"目标字符串
boolean yesorno = m.matches();//yesorno是或不是;返回布尔变量;matches()匹配的是整个字符序列
System.out.println(yesorno);

	Matcher m2 = p.matcher("asfsdf2&&3323");
	boolean yesorno2 = m2.matches();
	System.out.println(yesorno2);
}

}
//-----------------------------结果-------------
在这里插入图片描述
//---------------find()方法----------------------
package java_261_正则表达式_java编程中的使用_查找_替换_分割_练习;

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

public class Demo01 {
public static void main(String[] args) {
//在这个字符串:asfsdf23323;是否符合指定的正则表达式\w+
//表达式对象; Pattern模式;compile编译;
Pattern p = Pattern.compile("\w+"); //这个就代表正则表达式;写入\w+;注意:在java中\变2个
//创建(Matcher)匹配对象
//Matcher m = p.matcher(“asfsdf23323”);//Matcher匹配器;"asfsdf23323"目标字符串
//boolean yesorno = m.matches();//yesorno是或不是;返回布尔变量;matches()匹配的是整个字符序列
//System.out.println(yesorno);

	Matcher m2 = p.matcher("asfsdf2&&3323");
	//boolean yesorno2 = m2.matches();
	//System.out.println(yesorno2);
	
	System.out.println("====================");
	System.out.println(m2.find());//find查找;该方法扫描输入的序列,查找与该模式匹配的下一个序列;第一次找到asfsdf2符合条件true
	System.out.println(m2.find());//第二次找到3323符合条件true
	System.out.println(m2.find());//第三次表示没有匹配的下一个序列 false
	System.out.println(m2.find());//同理
}

}

//----------------------结果-------------
在这里插入图片描述
//-------------------分次方法打印-------------------
package java_261_正则表达式_java编程中的使用_查找_替换_分割_练习;

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

public class Demo01 {
public static void main(String[] args) {
//在这个字符串:asfsdf23323;是否符合指定的正则表达式\w+
//表达式对象; Pattern模式;compile编译;
Pattern p = Pattern.compile("\w+"); //这个就代表正则表达式;写入\w+;注意:在java中\变2个
//创建(Matcher)匹配对象
//Matcher m = p.matcher(“asfsdf23323”);//Matcher匹配器;"asfsdf23323"目标字符串
//boolean yesorno = m.matches();//yesorno是或不是;返回布尔变量;matches()匹配的是整个字符序列
//System.out.println(yesorno);

	Matcher m2 = p.matcher("asfsdf2&&3323");
	//boolean yesorno2 = m2.matches();
	//System.out.println(yesorno2);
	
	/*System.out.println("====================");
	System.out.println(m2.find());//find查找;该方法扫描输入的序列,查找与该模式匹配的下一个序列;第一次找到asfsdf2符合条件true
	System.out.println(m2.find());//第二次找到3323符合条件true
	System.out.println(m2.find());//第三次表示没有匹配的下一个序列 false
	System.out.println(m2.find());//同理
	 */		 	
	System.out.println(m2.find());
	System.out.println(m2.group());//group分组
	System.out.println(m2.find());//有没有下一个
	System.out.println(m2.group());//找到的打印出来
	}

}
//-------------------结果---------------
在这里插入图片描述
//----------------------循环方法打印--------------------------
package java_261_正则表达式_java编程中的使用_查找_替换_分割_练习;

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

public class Demo01 {
public static void main(String[] args) {
//在这个字符串:asfsdf23323;是否符合指定的正则表达式\w+
//表达式对象; Pattern模式;compile编译;
Pattern p = Pattern.compile("\w+"); //这个就代表正则表达式;写入\w+;注意:在java中\变2个
//创建(Matcher)匹配对象
//Matcher m = p.matcher(“asfsdf23323”);//Matcher匹配器;"asfsdf23323"目标字符串
//boolean yesorno = m.matches();//yesorno是或不是;返回布尔变量;matches()匹配的是整个字符序列
//System.out.println(yesorno);

	Matcher m2 = p.matcher("asfsdf2&&3323");
	//boolean yesorno2 = m2.matches();
	//System.out.println(yesorno2);
	
	/*System.out.println("====================");
	System.out.println(m2.find());//find查找;该方法扫描输入的序列,查找与该模式匹配的下一个序列;第一次找到asfsdf2符合条件true
	System.out.println(m2.find());//第二次找到3323符合条件true
	System.out.println(m2.find());//第三次表示没有匹配的下一个序列 false
	System.out.println(m2.find());//同理
	 */		 	
	/*System.out.println(m2.find());
	System.out.println(m2.group());//group分组
	System.out.println(m2.find());//有没有下一个
	System.out.println(m2.group());//找到的打印出来
	*/
	//用循环方式
	while(m2.find()){
		System.out.println(m2.group());//group(),group(0)都是匹配整个表达式的字符串
		System.out.println(m2.group(0));
	}
	
}

}

//------------------结果--------------
在这里插入图片描述
//-----------------------对象分组查找方法----------------

package java_261_正则表达式_java编程中的使用_查找_替换_分割_练习;

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

  • 测试正则表达式对象分组的处理
    */
    public class Demo03 {
    public static void main(String[] args) {
    //在这个字符串:asfsdf23323;是否符合指定的正则表达式\w+
    //表达式对象; Pattern模式;compile编译;
    Pattern p = Pattern.compile("([a-z]+)([0-9]+)"); //这个就代表正则表达式;写入\w+;注意:在java中\变2个

     Matcher m2 = p.matcher("aa232**ssd445*sds223");
     //用循环方式
     while(m2.find()){
     	//分组查找
     	System.out.println(m2.group());//group(),group(0)都是匹配整个表达式的字符串
     	//System.out.println(m2.group(0));
     	System.out.println(m2.group(1));
     	System.out.println(m2.group(2));
     }
    

    }
    }
    //---------------------结果-------------------------------------
    在这里插入图片描述
    //---------------------替换方法--------------------------
    package java_261_正则表达式_java编程中的使用_查找_替换_分割_练习;

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

  • 测试正则表达式对象其他用法
    */
    public class Demo03 {
    public static void main(String[] args) {
    //在这个字符串:asfsdf23323;是否符合指定的正则表达式\w+
    //表达式对象; Pattern模式;compile编译;
    Pattern p = Pattern.compile("[0-9]"); //这个就代表正则表达式;写入\w+;注意:在java中\变2个

     Matcher m2 = p.matcher("aa232**ssd445*sds223");
     //替换;把数字替换为符号
     String newStr = m2.replaceAll("#");//替换后返回新的字符串
     System.out.println(newStr);
    

    }
    }
    //-------------------------结果------------
    在这里插入图片描述
    //------------------分割方法---------------------
    package java_261_正则表达式_java编程中的使用_查找_替换_分割_练习;

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

import com.sun.corba.se.impl.resolver.SplitLocalResolverImpl;
/**

  • 测试正则表达式对象其他用法
    */
    public class Demo04 {
    public static void main(String[] args) {
    //字符串
    String str = “a,b,c”;
    //分割
    String[] arrs = str.split(",");//返回字符串数组
    //打印
    System.out.println(Arrays.toString(arrs));

     //按数字边界进行分割
     System.out.println("====按数字边界进行分割=====");
     String str1 = "a232b4334c34334";
     //分割
     String[] arrs1 = str1.split("\\d+");
     //打印
     System.out.println(Arrays.toString(arrs1));
    

    }
    }

//---------------------结果-----------------------------
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值