搜索指定格式的数据

需求:找到文中指定的你想要的数据,并出现几次

使用场所:可以用来爬虫-。-,判断文中是否有你包含的数据。\

使用方法:

 

两种不同的方式:

 

 

 1 public class test1 {
 2     public static void main(String[] args) {
 3         /*
 4             Pattern类:
 5                 概述:表示正则表达式
 6                 如何获取正则表达式对象:
 7                     static Pattern compile(String regex) 将给定的正则表达式编译到模式中。
 8                     Matcher matcher(CharSequence input)  创建匹配给定输入与此模式的匹配器。
 9                 使用Matcher类的方法查找:
10                      boolean find()  尝试查找与该模式匹配的输入序列的下一个子序列。
11                      String group() 返回由以前匹配操作所匹配的输入子序列。
12          */
13         String str = "我的电话号码是13577886677,我朋友的号码是13477888899,我对象的号码是15712345678";
14 
15         // 获取一个指定格式的正则表达式
16         Pattern p = Pattern.compile("1[358]\\d{9}");
17 
18         // 获取Matcher对象
19         Matcher m = p.matcher(str);
20 
21         // 查找
22         //System.out.println(m.find());
23         //System.out.println(m.group());
24         //
25         //System.out.println(m.find());
26         //System.out.println(m.group());
27         //
28         //System.out.println(m.find());
29         //System.out.println(m.group());
30 
31         while (m.find()){
32             System.out.println(m.group());
33         }
34 
35 
36         String str1 = "Java语言是面向对象的,Java语言是健壮的,Java语言是安全的,Java是高性能的,Java语言是跨平台的";
37         // 1.定义一个int变量,用来统计Java出现的次数
38         int count = 0;
39 
40         // 2.循环判断
41         int index = -1;
42         while ((index = str1.indexOf("Java")) != -1){
43             count++;
44             // 改变str1中的字符串内容
45             str1 = str1.substring(index+4);
46         }
47         System.out.println(count);
48 
49     }
50 
51 }

 

posted @ 2020-12-24 17:41  乃颜先生  阅读(104)  评论(0编辑  收藏  举报