- 浏览: 1007822 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (394)
- OSGI (14)
- 多线程 (10)
- 数据库 (30)
- J2ME (1)
- JAVA基础知识 (46)
- 引用包 (1)
- 设计模式 (7)
- 工作流 (2)
- Ubuntu (7)
- 搜索引擎 (6)
- QT (2)
- Ubuntu下编程 (1)
- 小程序 (2)
- UML (1)
- Servlet (10)
- spring (16)
- IM (12)
- 文档视频转为flash格式在线播放 (19)
- Maven (8)
- 远程调用 (2)
- PHPRPC (1)
- EXTJS学习 (2)
- Hibernate (16)
- 技术文章 (38)
- flex (5)
- 海量数据处理 (5)
- FTP (8)
- JS (10)
- Struts (1)
- hibernate search (13)
- JQuery (2)
- EMail (3)
- 算法 (4)
- SVN (7)
- JFreeChart (4)
- 面试 (4)
- 正规表达式 (2)
- 数据库性能优化 (10)
- JVM (6)
- Http Session Cookie (7)
- 网络 (12)
- Hadoop (2)
- 性能 (1)
最新评论
-
hy1235366:
能够随便也发一下,你退火算法程序使用的DistanceMatr ...
模拟退火算法总结(含例子)(转) -
梅强强:
感谢分享。。帮大忙了
swftools转换文件时线程堵塞问题的解决方法 -
wenlongsust:
openoffice和文件不在同一个服务器上,用过吗?
[JODConverter]word转pdf心得分享(转) -
2047699523:
如何在java Web项目中开发WebService接口htt ...
利用Java编写简单的WebService实例 -
abingpow:
唉,看起来好像很详细很不错的样子,可惜不是篇面向初学者的文章, ...
Spring与OSGi的整合(二)(转)
public class TryDotRegEx { public static void main(String[] args) { // TODO Auto-generated method stub String str = "111.3.22.11"; str=str.replaceAll("(^|\\.)(\\d)(\\.|$)","$100$2$3"); str=str.replaceAll("(^|\\.)(\\d{2})(\\.|$)","$10$2$3"); str=str.replaceAll("(^|\\.)(\\d{2})(\\.|$)","$10$2$3"); str=str.replaceAll("(^|\\.)(\\d{1})(\\.|$)","$100$2$3"); System.out.println(str); } }
打印结果:111,003,022,011;
正则表达式,关于String.replaceALL(..)
class t1 { public static void main(String a[]) { String s = 'E:\\jbx\\x9\\io9'; String ss; //把路径s中的'\'换为'\\',为何还要整8个'\'?我以为4个就行了。 ss = s.replaceAll('\\\\', '\\\\\\\\ System.out.println('s= ' + s); System.out.println('ss=' + ss); //output: //s= E:\jbx\x9\io9 //ss=E:\\jbx\\x9\\io9 } }
这里的关键是String.replaceAll()是用regular expression 来作为参数的。但是java本身的字符串对于转义符\也有类似的处理。首先,java会把“\\\\”解释成一个字符串(其中包含两个char)——“\ \”这个就是你在JDK的文档里看到的。
接下来,由于replaceAll是以正则表达式作为参数,所以“\\”被解释成一个regex。对于一个regex来说这就代表着一个字符,就是“\”。对后面的那个8个\来说,最终会被解释成“\\”。
换言之,假设String.replaceAll()是以普通字符串,而不是regex作为参数,那么这样写代码: String target = source.replaceAll('\\', '\\\\'); 就可以了。
我在写程序的时候,需要将"\"字符写入一个文本文件,开始以为这不是个什么问题,转换一下就好了嘛,代码如下: targetPath = targetPath.replaceAll("\\", "\\\\"); 原以为没有问题,这样就可以先在读入的字符串中把"\"转换为"\\",然后在写入文本文件时就会写成"\",没想到,报如下错误: java.util.regex.PatternSyntaxException: Unexpected internal error near index 1 回来查了资料才发现,java的replaceAll函数,使用的是正则表达式作为转换依据,而"\"在正则表达式中也是特殊字符,最后,写成下面的代码才达到了我预想的目的: targetPath = targetPath.replaceAll("\\\\", "\\\\\\\\"); ===================================== replace和replaceAll方法的区别: 主要就是后者是基于规则表达多的替换,而前者是一般的基于字符或字符序列本身的替换。 比如,可以通过replaceAll("\\d", "*")把一个字符串所有的数字字符都换成星号,replace就做不到,因为它不是基于规则表达多的替换。
在replaceAll(String,String)方法中需要特殊处理英文状态的括号,在网上找了一下,可以使用下面的写法将英文括号替换成其他字符(比如中文全角括号):str1.replaceAll("\\(","(");Java String replaceAll and regex
String tmp = "-$125402.00";
tmp.replaceAll("$","");
可是执行去来的结果并没有把$去除。后来找资料才发现要这样写
tmp.replaceAll("\\$","")才可以。
fileOperate.createFile(fileName, targetPath);
\
fileOperate.createFile(fileName, targetPath);
发表评论
-
Java线程(二):线程同步synchronized和volatile(转)
2014-03-17 00:09 914转载自:http://blog.csdn.net/ghsau ... -
浅谈Java多线程的同步问题(l转)
2014-03-17 00:07 955非常好的使用线程同步的文章 转载自http://www.c ... -
JVM的垃圾回收机制详解和调优(转)
2013-06-20 10:31 7401.JVM的gc概述 gc即垃圾 ... -
深入探讨 Java 类加载器(转)
2013-06-20 10:17 898转载自:http://www.ibm.com/develop ... -
java反射详解(推荐转)
2013-05-15 10:42 903载自:http://www.cnblogs.com/roll ... -
java静态方法、非静态代码块{}、静态代码块static{}(转)
2012-07-13 14:33 1511转自:http://www.cn-java.com/www1/ ... -
error 与 Exception区别(转)
2012-07-13 14:31 1100Error类和Exception类都继承自Throwab ... -
java面试题有哪些常见的(转)
2012-07-13 14:30 1219第一,谈谈final, finally, finaliz ... -
java Math.round()(转)
2012-07-11 14:17 1210public class MathTest { ... -
Java异常的分类(转)
2012-07-11 08:57 1067转载自:http://blog.csdn.net/ilibab ... -
java 内联函数(转)
2012-06-28 23:40 1850以前用过C++,知道它 ... -
堆栈,堆栈,堆和栈的区别(转)
2011-05-08 00:36 1209不防看看这篇文章:http://www.cppblog.com ... -
第二十章 指针 二 为指针分配和释放空间(转)
2011-05-08 00:10 1516载自<白话c++>:http://17de.com ... -
数据结构中各种时间复杂度(转)
2011-05-06 09:58 2811(1)冒泡排序 冒泡排序就是把小的元素往 ... -
C#之int挑战Java之Integer(转)
2011-04-28 14:24 1360可能有些图会看不到,可以到转载处去阅读:http://kb.c ... -
Java: 堆 & 栈(转)
2011-04-28 14:16 1420栈是运行时的单位,而堆是存储的单位。栈解决程序的运行问题,即程 ... -
native2ascii 使用方法 及 Java字符编码(转)
2011-04-18 01:17 2754在做Java开发的时候,常 ... -
Unicode,ISO-8859,GBK,UTF-8编码及相互转换(java)(转)
2011-04-18 01:15 69071、函数介绍在Java中,字符串用统一的Unicode编码 ... -
GBK与UTF-8 转换乱码详解(转)
2011-04-18 01:07 3508getBytes 的功能是将字符转换成字节数组, gbk. ... -
Java TreeMap的简单实现(转)
2011-04-18 00:29 1119TreeMap的实现与二叉搜索树显示,其对应的节点格式为 E ...
相关推荐
Java中的`replace`、`replaceAll`和`replaceFirst`是字符串操作中常见的方法,用于替换字符串中的特定子串。它们都是`String`类的方法,但各自有不同的行为和用途。 1. `replace(CharSequence target, CharSequence...
在Java编程中,`replaceAll()`方法是用于字符串替换的一个强大工具,它接受两个参数:一个正则表达式作为第一个参数,以及一个替换字符串作为第二个参数。然而,如果使用不当,可能会遇到`Illegal group reference`...
而 Java 中的 replaceAll 方法则不同,replaceAll(String regex, String replacement) 方法使用给定的 replacement 替换字符串中所有匹配给定的正则表达式的子字符串。这个方法的参数是 regex(正则表达式)和 ...
4. 处理特殊情况:如果需要更复杂的处理,比如保留某些标签的格式(如段落),可以使用`outerHtml()`方法结合正则表达式进行处理。例如,保留段落标签: ```java String cleanedText = doc.select("p").outerHtml()....
第三种方法尤其有用,因为它可以直接调用,语法上与Java或其他一些语言的replaceAll方法一致,提高了代码的可读性和易用性。 此外,文中还提到了两个JavaScript正则表达式工具网站,提供了在线测试和在线生成正则...
replace和replaceAll是JAVA中常用的替换字符的方法,它们的区别是: 1)replace的参数是char和CharSequence,即可以支持字符的替换,也支持字符串的替换(CharSequence即字符串序列的意思,说白了也是字符串); 2)...
Java中转义字符反斜杠的代替方法及repalceAll内涵解析 ...Java中转义字符反斜杠的代替方法需要根据不同的情况选择合适的方法,例如使用StringEscapeUtils工具类或replaceAll方法,以便正确地处理字符串转义问题。
在Java编程中,将对象转换为XML...总结来说,Java中将对象转换为XML格式的方法多样,可以根据具体需求和项目规模选择合适的方法。在实际应用中,理解这些API的工作原理和使用方式对于优化性能和提高代码质量至关重要。
然而,这种方法存在一个缺点,即无论何时数据被访问或序列化,都会使用脱敏后的数据,这可能并不总是理想的。 2. **利用日志组件过滤**: 另一个方法是通过日志框架(如Log4j或SLF4J)设置过滤器,匹配并替换特定...
在Java编程中,掌握一些常用的方法对于提升开发效率和代码质量至关重要。本篇文章将围绕"java常用方法转换时间等等"这一主题,详细讲解Java中处理时间、算法、加密解密以及数据库连接等核心知识点。 首先,让我们从...
与 `replace()` 不同,`replaceAll()` 方法使用正则表达式作为其第一个参数,这使得它具有更强大的功能。它可以执行基于规则的替换,例如替换所有数字为星号: ```java src.replaceAll("\\d", "*"); // 输出:ab**f...
在Java中,去除空格可以使用trim()、replace()、replaceAll()等方法。 1. 使用trim()方法去除首尾空格 trim()方法可以去除字符串的首尾空格,但是不能去除中间的空格。例如: ```java String str = " hello world ...
在某些情况下,如使用JPA,可以通过在Java实体类的字段上使用特定的注解(如`@Column`),指定数据库中的字段名。 理解这些知识点有助于提升开发效率,减少错误,并确保代码的整洁和一致性。对于大型项目,良好的...
在Java编程语言中,`String.replaceAll`方法是一个非常强大的工具,尤其当结合正则表达式使用时,可以实现复杂的文本处理。本文将深入探讨`String.replaceAll`方法的使用及其背后的正则表达式分组概念。 首先,`...
Java String.replace()方法"无效"的原因及解决方式 Java String.replace()方法是一种常用...在使用Java String类型的replace和replaceAll方法时,我们需要注意它们的使用方法和返回值的机制,以避免出现"无效"的情况。
使用HttpURLConnection创建连接并设置请求方法为POST: ```java URL url = new URL("http://example.com/api"); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection....
4. **替换内容**:使用`String.replace()`或`String.replaceAll()`方法替换文本内容。 5. **写入新文件**:创建一个新的文件,使用`Files.write()`方法以UTF-8编码写入替换后的字符串。 在批量处理文件时,可以使用...
### Java正则表达式入门及用法 #### 一、正则表达式的概念与作用 在计算机科学领域,正则表达式(Regular Expression)是一种强大的文本处理工具,它由一系列字符和特殊符号组成,用于匹配字符串中的特定模式。...
### Java正则表达式的概述及在JAVA中的使用方法 #### 一、正则表达式简介 正则表达式(Regular Expression)是一种强大的文本处理工具,它由一系列字符和特殊符号组成,用于匹配字符串中特定的组合。在Java中,正则...