将由三个字符组成的单词输出,并统计个数: String s = "da jia ting wo shuo,jin tian yao xia yu,bu shang wan zi xi,gao xing bu?";

题目:

  将由三个字符组成的单词输出,并统计个数: String s = "da jia ting wo shuo,jin tian yao xia yu,bu shang wan zi xi,gao xing bu?";

 

相关知识:

java.util.regex 包主要包括以下三个类:

  • Pattern 类:

    pattern 对象是一个正则表达式的编译表示。Pattern 类没有公共构造方法。要创建一个 Pattern 对象,你必须首先调用其公共静态编译方法,它返回一个 Pattern 对象。该方法接受一个正则表达式作为它的第一个参数。

  • Matcher 类:

    Matcher 对象是对输入字符串进行解释和匹配操作的引擎。与Pattern 类一样,Matcher 也没有公共构造方法。你需要调用 Pattern 对象的 matcher 方法来获得一个 Matcher 对象。

  • PatternSyntaxException:

    PatternSyntaxException 是一个非强制异常类,它表示一个正则表达式模式中的语法错误。

 

解答:

package ceshi;

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

public class TEST {
    public static void main(String[] args) {

        //将由三个字符组成的单词输出,并统计个数

        String s = "da jia ting wo shuo,jin tian yao xia yu,bu shang wan zi xi,gao xing bu?";

        //1.定义正则规则

        String regex = "\\b\\w{3}\\b";

        //2.将规则加入模式器

        Pattern pattern = Pattern.compile(regex);

        //3.通过模式器获取匹配器对象

        Matcher matcher = pattern.matcher(s);

        //4.通过匹配其对象的find()方法查找符合规则的内容

        int count = 0;//统计变量

        while(matcher.find()){

            count++;

            //5.通过匹配其对象的group()方法获取通过find()方法查找到的内容

            System.out.println(matcher.group());

        }

        System.out.println("count:"+count);

    }

}

 

posted @ 2021-08-08 20:48  热心市民陆女士  阅读(177)  评论(0编辑  收藏  举报