最好还是用我们自己实现的替换字符串的方法来做(JDK 1.4 之前找的代码):
// ------------------------------------ 字符串处理方法
// ----------------------------------------------
/**
* 将字符串 source 中的 oldStr 替换为 newStr, 并以大小写敏感方式进行查找
*
* @param source
* 需要替换的源字符串
* @param oldStr
* 需要被替换的老字符串
* @param newStr
* 替换为的新字符串
*/
public static String replace(String source, String oldStr, String newStr) {
return replace(source, oldStr, newStr, true);
}
/**
* 将字符串 source 中的 oldStr 替换为 newStr, matchCase 为是否设置大小写敏感查找
*
* @param source
* 需要替换的源字符串
* @param oldStr
* 需要被替换的老字符串
* @param newStr
* 替换为的新字符串
* @param matchCase
* 是否需要按照大小写敏感方式查找
*/
public static String replace(String source, String oldStr, String newStr,
boolean matchCase) {
if (source == null) {
return null;
}
// 首先检查旧字符串是否存在, 不存在就不进行替换
if (source.toLowerCase().indexOf(oldStr.toLowerCase()) == -1) {
return source;
}
int findStartPos = 0;
int a = 0;
while (a > -1) {
int b = 0;
String str1, str2, str3, str4, strA, strB;
str1 = source;
str2 = str1.toLowerCase();
str3 = oldStr;
str4 = str3.toLowerCase();
if (matchCase) {
strA = str1;
strB = str3;
} else {
strA = str2;
strB = str4;
}
a = strA.indexOf(strB, findStartPos);
if (a > -1) {
b = oldStr.length();
findStartPos = a + b;
StringBuffer bbuf = new StringBuffer(source);
source = bbuf.replace(a, a + b, newStr) + "";
// 新的查找开始点位于替换后的字符串的结尾
findStartPos = findStartPos + newStr.length() - b;
}
}
return source;
}
分享到:
相关推荐
C语言内没有字符串替换函数,此函数实现字符串替换
由于PB不带有字符串替换函数功能,因此自为PB程序开发了常用的字符串替换函数。
C语言字符串替换函数strrpl支持中文汉字,解决含中文汉字,可能替换错误的情况。支持GBK、GB18030字符串。
java字符转换类代码,可以实现判断字符串是否为空,并删除首尾空格,字符串替换函数,代码转换,GBK转换为ISO-8859-1,代码转换 从srcCode转换为destCode,代码转换,GBK转换为big5,替换非法字符,标记本身等于分隔...
oracle 字符串 替换 regexp_replace
使用c++写的字符串替换函数,可以完成字符串的替换功能
MyReplace字符串替换工具,用于替换16进制字符,不用十六进制翻译。
c语言实现字符串替换c语言实现字符串替换c语言实现字符串替换c语言实现字符串替换c语言实现字符串替换c语言实现字符串替换c语言实现字符串替换c语言实现字符串替换c语言实现字符串替换c语言实现字符串替换c语言实现...
字符串替换java类 具体应用:例如把utf-8替换成gb2312
批量字符串替换小工具,支持自定义文件扩展名,包含目录及子目录。
文件字符串替换工具
一般来讲,在XSL中进行字符串替换有以下两种方法: (1)使用ms:script嵌入XSL实现,但要求XML解析器必须是MS的。 (2)使用纯XSL模板来实现。 当然,使用第(1)种方法有个好处就是可以充分利用javascript强大的字符串...
软件介绍: showstring能够打开可执行文件EXE/DLL,从中搜索并替换指定的字符串。支持ASCII/UNICODE类型的字符串。能逐个字符地扫描文件,根据选项要求来设定如何搜索。
(str1,str2,str3)用str3替换在str1中出现的str2
使用java代码实现搜索遍历文本文件并替换文本内容, 支持脚本bat和sh调用.
用于fortran语言分割字符串和字符串替换的子程序
将已知文件中的指定字符串替换为其他的字符串
字符串替换源代码
把旧的字符串替换成新的字符串 s oldstr newstr
vim全文字符串替换,vim使用方法,说明