zoukankan      html  css  js  c++  java
  • Java经典实例:正则表达式,替换匹配的文本

    import java.util.regex.Matcher;
    import java.util.regex.Pattern;
    
    /**
     * Created by Frank
     * 替换匹配的文本
     */
    public class ReplaceDemo {
        public static void main(String[] args) {
            // 创建一个正则表达式模式,用以匹配一个单词(=单词边界)
            String patt = "\bfavor\b";
    
            // 用于测试的输入字符串
            String input = "Do me a favor? Fetch my favorites.AAA favor BBB";
            System.out.println("Input:" + input);
    
            // 从正则表达式实例中运行方法并查看其如何运行
            Pattern r = Pattern.compile(patt);
            Matcher m = r.matcher(input);
            System.out.println("ReplaceAll:" + m.replaceAll("favour"));
    
            // appendReplacement方法
            m.reset();
            StringBuffer sb = new StringBuffer();
            while (m.find()) {
                // 将匹配之前的字符串复制到sb,再将匹配结果替换为:"favour",并追加到sb
                m.appendReplacement(sb, "favour");
            }
            System.out.println(sb.toString());
            m.appendTail(sb);
            System.out.println(sb.toString());
        }
    }

    输出:

    Input:Do me a favor? Fetch my favorites.AAA favor BBB
    ReplaceAll:Do me a favour? Fetch my favorites.AAA favour BBB
    Do me a favour? Fetch my favorites.AAA favour
    Do me a favour? Fetch my favorites.AAA favour BBB
  • 相关阅读:
    HDU3584 Cube
    SPOJ1029 Matrix Summation
    SPOJ227 Ordering the Soldiers
    ScriptX,smsx打印控件安装及无法打印的问题
    如何做站
    右下角浮动
    简单的显示关闭
    总结
    ubuntu 上网设置
    固定高度后能自动伸缩
  • 原文地址:https://www.cnblogs.com/frankyou/p/6047664.html
Copyright © 2011-2022 走看看