Java--正则表达式

java

第一种 类似于python的re.search("\d+","123")

import java.io.*;

import java.util.*;

import java.util.regex.*;

public class test {

public static void readFile() throws IOException {

//类似于

File f = new File("C:\\Users\\15773\\Desktop\\简历投递\\新建文本文档.txt");

FileReader reader = new FileReader(f);

BufferedReader br = new BufferedReader(reader);

//按行读取

String line;

String regex="\\d+";

while ((line = br.readLine()) != null){

// System.out.println(line);

if (line.matches(regex)){//类似于re.search(pattern,string)

System.out.println(line+":matching regex");

}else {

System.out.println(line+":not matching regex");

}

}

br.close();

}

public static void main(String[] args) throws IOException{

test.readFile();

}

}

第二种类似于python的pattern,search,group

这种方式和python一样,适用于需要重复匹配,效率高

import java.io.*;

import java.util.*;

import java.util.regex.*;

public class test {

public static void readFile() throws IOException {

//第一步确定pattern

Pattern pattern = Pattern.compile("(\\d+)");

//第二部进行匹配

Matcher matcher = pattern.matcher("phone number is 123445");

if (matcher.find()){

System.out.println("匹配到了 "+ matcher.group(0));

}else{

System.out.println("没有匹配到");

}

}

public static void main(String[] args) throws IOException{

test.readFile();

}

}

import java.io.*;

import java.util.*;

import java.util.regex.*;

public class test {

public static void readFile() throws IOException {

//第一步确定pattern

Pattern pattern = Pattern.compile("([a-zA-Z\s]+)(\\d+)");

//第二部进行匹配

Matcher matcher = pattern.matcher("phone number is 123445");

if (matcher.find()){

System.out.println("匹配到了 ");

System.out.println("这里匹配到的是字符串 "+matcher.group(0));

System.out.println("这里匹配到的是数字 "+matcher.group(1));

}else{

System.out.println("没有匹配到");

}

}

public static void main(String[] args) throws IOException{

test.readFile();

}

}

关于文件读取的操作:https://blog.csdn.net/weixin_43139592/article/details/105283446

以上是 Java--正则表达式 的全部内容, 来源链接: utcz.com/z/390707.html

回到顶部