Java经典实例:正则表达式,替换匹配的文本
import java.util.regex.Matcher;
import java.util.regex.Pattern; /**
* Created by Frank
* 替换匹配的文本
*/
public class ReplaceDemo {
public static void main(String[] args) {
// 创建一个正则表达式模式,用以匹配一个单词(\b=单词边界)
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
Java经典实例:正则表达式,替换匹配的文本的更多相关文章
- Java经典实例:使用正则表达式:测试模式
import java.util.regex.Pattern; /** * Created by Frank * 在Java中使用正则表达式:测试模式 */ public class RESimple ...
- java replaceall 使用正则表达式替换单等号,不替换其他相关的等号。
写项目需要将公式配置到数据库中,取出后根据公式规则进行比较,由于公式的等于是用单等号,在java中无法直接使用,故需要将单等号替换成双等号,单又不能影响大于等于以及其他形式.故果断选择正则表达式替换. ...
- Java如何在正则表达式中匹配重复单词?
在Java编程中,如何在正则表达式中匹配重复单词? 以下示例显示了如何使用regex.Matcher类的p.matcher()方法和m.group()方法在正则表达式中搜索重复的单词. package ...
- Java经典实例:正则表达式,找到匹配的文本
import java.util.regex.Matcher; import java.util.regex.Pattern; /** * Created by Frank */ public cla ...
- Java经典实例:在文本中匹配换行符
默认情况下,正则表达式 ^ 和 $ 忽略行结束符,仅分别与整个输入序列的开头和结尾匹配.如果激活 MULTILINE 模式,则 ^ 在输入的开头和行结束符之后(输入的结尾)才发生匹配.处于 MULTI ...
- Java经典实例:在正则表达式中控制大小写
默认是:区分大小写的: 传递标志参数:Pattern.CASE_INSENSITIVE,以说明匹配时忽略大小写:如果你的代码运行在不同的地区那么你应该再添加一个Pattern.UNICODE_CASE ...
- Java经典实例:使用ChoiceFormat来格式化复数
import java.text.ChoiceFormat; /** * Created by Frank */ public class FormatPuralsChoice extends For ...
- Javascript经典实例 - 正则表达式
1] 正则常用字符 正则表达式常用的特殊字符 字符 匹配 示例 ^ 匹配输入的开始 /^This/匹配 “This is ...” $ 匹配输入的结束 /end$/匹配“This is the end ...
- Java 经典实例:自定义迭代器
编写自己的Iterator,实现Iterator接口,这里多说一句,实现Iterable后,可以用"foreach"循环遍历你的对象. import java.util.Itera ...
随机推荐
- iOS开发——高级技术&广告服务
广告服务 上 面也提到做iOS开发另一收益来源就是广告,在iOS上有很多广告服务可以集成,使用比较多的就是苹果的iAd.谷歌的Admob,下面简单演示一下如何 使用iAd来集成广告.使用iAd集成广告 ...
- mysql创建数据库指定编码uft8
mysql创建数据库指定编码uft8 CREATE DATABASE IF NOT EXISTS my_db default character set utf8 COLLATE utf8_gener ...
- KnockoutJS 3.X API 第三章 计算监控属性(5) 参考手册
计算监控属性构造参考 计算监控属性可使用以下形式进行构造: ko.computed( evaluator [, targetObject, options] ) - 这种形式是创建一个计算监控属性最常 ...
- 为什么SQL语句Where 1=1 and在SQL Server中不影响性能
最近一个朋友和我探讨关于Where 1=1 and这种形式的语句会不会影响性能.最后结论是不影响. 虽然结论正确,但对问题的认识却远远没有解决问题的根本.实际上在T-SQL语句的书写过 ...
- CSS 性能
http://boagworld.com/dev/why-you-should-care-about-css-page-performance/ http://css-tricks.com/effic ...
- struts2拦截器
一.自定义拦截器 struts2拦截器类似于servlet过滤器 首先定义一个拦截器这个拦截器实现了Interceptor接口: package cn.orlion.interceptor; impo ...
- px 与 dp, sp换算公式?
PPI = Pixels per inch,每英寸上的像素数,即 "像素密度" xhdpi: 2.0 hdpi: 1.5 mdpi: 1.0 (baseline) ldpi: 0. ...
- 轻松自动化---selenium-webdriver(python) (十二)
本节重点: l 键盘按键用法 l 键盘组合键用法 l send_keys() 输入中文运行报错问题 键盘按键键用法: #coding=utf-8 from selenium import webdri ...
- Arctext.js - 基于 CSS3 & jQuery 的文本弯曲效果
Arctext.js 是基于 Lettering.js 的文本旋转插件,根据设置的旋转半径准确计算每个字母的旋转弧度并均匀分布.虽然 CSS3 也能够实现字符旋转效果,但是要让安排每个字母都沿着弯曲路 ...
- 15 Best Responsive HTML5 Frameworks 2014
Best HTML5 frameworks are most popular because with the use of these frameworks you can create websi ...