Java replaceAll不区分大小写
Java 中replaceAll如何忽略大小写呢?
方式一:在正则表达式前面添加(?i)
- @Test
- public void test_replaceAll33(){
- String input = "I like Java,jAva is very easy and jaVa is so popular.";
- String replacement="cccc";
- System.out.println(input);
- System.out.println(input.replaceAll("(?i)java", replacement));
- }
@Test
public void test_replaceAll33(){
String input = "I like Java,jAva is very easy and jaVa is so popular.";
String replacement="cccc"; System.out.println(input);
System.out.println(input.replaceAll("(?i)java", replacement));
}
测试结果:
方式二:使用Matcher 的appendReplacement 方法
- @Test
- public void test_replaceAll(){
- String input = "I like Java,jAva is very easy and jaVa is so popular.";
- String regex = "java";
- String replacement="cccc";
- StringBuffer sb =replaceAll2(input, regex, replacement);
- System.out.println(input);
- System.out.println(sb);
- }
- /***
- * replaceAll,忽略大小写
- * @param input
- * @param regex
- * @param replacement
- * @return
- */
- public StringBuffer replaceAll2(String input,String regex,String replacement){
- Pattern p = Pattern.compile(regex,Pattern.CASE_INSENSITIVE);
- Matcher m = p.matcher(input);
- StringBuffer sb = new StringBuffer();
- boolean result = m.find();
- while (result)
- {
- m.appendReplacement(sb, replacement);
- result = m.find();
- }
- m.appendTail(sb);
- return sb;
- }
@Test
public void test_replaceAll(){
String input = "I like Java,jAva is very easy and jaVa is so popular.";
String regex = "java";
String replacement="cccc"; StringBuffer sb =replaceAll2(input, regex, replacement);
System.out.println(input);
System.out.println(sb); }
/***
* replaceAll,忽略大小写
* @param input
* @param regex
* @param replacement
* @return
*/
public StringBuffer replaceAll2(String input,String regex,String replacement){
Pattern p = Pattern.compile(regex,Pattern.CASE_INSENSITIVE);
Matcher m = p.matcher(input);
StringBuffer sb = new StringBuffer();
boolean result = m.find();
while (result)
{
m.appendReplacement(sb, replacement);
result = m.find();
}
m.appendTail(sb);
return sb;
}
测试结果:
方式三:使用Matcher 的replaceAll
- /***
- * replaceAll,忽略大小写
- *
- * @param input
- * @param regex
- * @param replacement
- * @return
- */
- public String replaceAll3(String input, String regex, String replacement) {
- Pattern p = Pattern.compile(regex, Pattern.CASE_INSENSITIVE);
- Matcher m = p.matcher(input);
- String result = m.replaceAll(replacement);
- return result;
- }
- @Test
- public void test_replaceAll3() {
- String input = "I like Java,jAva is very easy and jaVa is so popular.";
- String regex = "java";
- String replacement = "cccc";
- String sb = replaceAll3(input, regex, replacement);
- System.out.println(input);
- System.out.println(sb);
- }
/***
* replaceAll,忽略大小写
*
* @param input
* @param regex
* @param replacement
* @return
*/
public String replaceAll3(String input, String regex, String replacement) {
Pattern p = Pattern.compile(regex, Pattern.CASE_INSENSITIVE);
Matcher m = p.matcher(input);
String result = m.replaceAll(replacement);
return result;
} @Test
public void test_replaceAll3() {
String input = "I like Java,jAva is very easy and jaVa is so popular.";
String regex = "java";
String replacement = "cccc"; String sb = replaceAll3(input, regex, replacement);
System.out.println(input);
System.out.println(sb); }
测试结果: 参考:http://hw1287789687.iteye.com/blog/2150892
Java replaceAll不区分大小写的更多相关文章
- java replaceAll Replace
java ReplaceAll 的两个参数都必须是正则表达式. 在正则表达式中 \ (一个斜线)是用 \\ 来表示(即:用两个斜线表示一个斜线) 而在Java语言中 \ (一个斜线)是用 \\ 来表示 ...
- 你真的会用java replaceAll函数吗?
replace.replaceAll.replaceFirst这三个函数会java的同学估计都用过,笔者已经用了2年多,可是,我们真的懂他们吗? 概述一下他们三个的用法: · replace(Char ...
- JavaScript,Java,php的区分大小写问题
JavaScript 对大小写敏感. JavaScript 对大小写是敏感的.JavaScript属于弱类型语言 当编写 JavaScript 语句时,请留意是否关闭大小写切换键. 函数 getEle ...
- java replaceall 使用正则表达式替换单等号,不替换其他相关的等号。
写项目需要将公式配置到数据库中,取出后根据公式规则进行比较,由于公式的等于是用单等号,在java中无法直接使用,故需要将单等号替换成双等号,单又不能影响大于等于以及其他形式.故果断选择正则表达式替换. ...
- java replaceAll之$替换
最近,在开发一个伪代码翻译工具的过程中,遇到个问题,我们在伪代码中使用spring EL的规则,将非变量限定在${"1"}中,解析后根据上下文的类型转换为相应的java类型.在规则 ...
- java replaceall 用法:处理特殊字符
public class TryDotRegEx { public static void main(String[] args) { // TODO Auto-generated method st ...
- 特殊字符导致用正则表达式进行字符串替换失败,Java replaceAll()方法报错Illegal group reference
String str = "给商品||?>\\n阳澄湖大闸蟹!@#$%^&*()_+-=?:\",.]\\|~.,\/??\\\\|\\br点赞" Stri ...
- java getEnv不区分大小写 getProperty区分大小写
System.out.println(System.getenv("JAVA_HOME")); System.out.println(System.getenv("Pat ...
- java replaceAll 忽略大小写
public static void main(String[] args) { String temp=" CLASS_path : /aaabb/"; System.out.p ...
随机推荐
- 【转载】AsyncTask用法
在开发Android应用时必须遵守单线程模型的原则: Android UI操作并不是线程安全的并且这些操作必须在UI线程中执行.在单线程模型中始终要记住两条法则: 1. 不要阻塞UI线程 2. 确保只 ...
- jQuery中排除指定元素,同时选择剩下的所有元素
场景:某页面用了js延时加载技术处理所有图片,以改善用户体验,但是有几个图片不想延时加载,要求把它们单独挑出来. 研究了一下jQuery的API文档,搞掂了,jQuery真的很方便,贴在这里备份: 1 ...
- cocos2dx常见32种场景切换动画
bool HelloWorld::init() { ////////////////////////////// // 1. super init first if ( !CCLayer::init( ...
- iOS 中的 Block
参考:链接 (1)block作为本地变量(local variable) returnType (^blockName)(parameterTypes) = ^returnType(parameter ...
- Thirft 客户端等待时间
thrift框架使用C++ thrift shows CLOSE_WAIL error thrift中TNonblockingServer的简单用法
- hdoj5821【贪心-神题】
啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊,比赛的时候直接读错题了,实力带坑队友.... 题意: 有两个序列都代表筐,每个筐里只有一个球,然后序列的值代表筐里的球的颜色,问你在m次操作后,a序列的球能否变成b ...
- python 单下划线和双下划线
underline.py __all__ = ['_underline_variable', '__underline_variable', '_underline_func', '__underli ...
- 简述网站、B/S架构与C/S架构
一.什么是网站? 定义:网站是指在因特网上根据一定的规则,使用HTML等工具制作的用于展示特定内容相关网页的集合. 简单地说,网站是一种沟通工具(或者说是一种软件——建设网站也是软件开发的一种),我们 ...
- vim normal 模式下L键
vim normal 模式下L键总是到一行的最后一个字符,而不是最后一个字符的下一个字符,这样进入插入模式,就还得往右移动一下,就很费劲? 怎么解决 更新: a键进入插入即可
- hbase表结构 + hbase集群架构及表存储机制
本博文的主要内容有 .hbase读取数据过程 .HBase表结构 .附带PPT http://hbase.apache.org/ 读写的时候,就需要用hbase了,换句话说,就是读写的时候.需要 ...