`
个人专属
  • 浏览: 66364 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

字符串替换

JDK 
阅读更多
最好还是用我们自己实现的替换字符串的方法来做(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;
}

分享到:
评论

相关推荐

    PB程序中常用的字符串替换函数

    然而,PowerBuilder本身并未内置专门用于字符串替换的函数,这给开发者带来了一定的不便。为了解决这个问题,很多开发者会自行编写一些实用的字符串替换函数来满足项目需求。下面我们就基于题目中的信息,详细探讨...

    java 文本字符串替换工具

    在Java编程语言中,文本字符串替换是一个常见的任务,特别是在处理大量文本数据时。这个"java 文本字符串替换工具"很可能是为了帮助开发者高效地搜索和替换文件中的特定文本内容。让我们详细了解一下如何在Java中...

    oracle字符串替换

    ### Oracle字符串替换:使用REGEXP_REPLACE函数 在Oracle数据库中,对字符串进行处理是一项非常常见的需求,尤其是在数据清洗、格式转换等场景下。本文将详细介绍如何利用`REGEXP_REPLACE`函数来实现字符串替换功能...

    字符串替换C程序

    C语言内没有字符串替换函数,此函数实现字符串替换

    C语言字符串替换函数strrpl支持中文汉字

    C语言字符串替换函数strrpl支持中文汉字,解决含中文汉字,可能替换错误的情况。支持GBK、GB18030字符串。

    MyReplace字符串替换工具

    《MyReplace字符串替换工具详解与应用》 在日常的编程工作和文本处理中,我们经常需要对字符串进行各种操作,其中替换字符是一项基础且频繁的任务。传统的字符串替换方法可能需要手动进行十六进制转换,这无疑增加...

    文件字符串替换工具

    《文件字符串替换工具详解》 在信息技术领域,文件字符串替换是一项常见的操作,它涉及到文本处理、数据处理以及软件开发等多个方面。本篇文章将深入探讨基于C++编程语言实现的文件字符串替换工具,揭示其原理、...

    批量字符串替换工具

    《批量字符串替换工具详解》 在日常的计算机操作中,我们常常需要对大量文本文件中的特定字符串进行查找和替换,以实现数据的统一或者格式的调整。这时,一款高效的批量字符串替换工具就显得尤为重要。本文将详细...

    java字符串替换 代码转换相关源码.rar

    java字符转换类代码,可以实现判断字符串是否为空,并删除首尾空格,字符串替换函数,代码转换,GBK转换为ISO-8859-1,代码转换 从srcCode转换为destCode,代码转换,GBK转换为big5,替换非法字符,标记本身等于分隔...

    c++实现的字符串替换功能

    使用c++写的字符串替换函数,可以完成字符串的替换功能

    vb6字符串替换工具

    在VB6(Visual Basic 6)环境中,字符串处理是一项常见的任务,而“vb6字符串替换工具”正是这样一个专为处理字符串替换问题而设计的应用程序。它提供了用户友好的界面和功能,使得程序员或普通用户能够方便地在文本...

    c语言实现字符串替换

    c语言实现字符串替换c语言实现字符串替换c语言实现字符串替换c语言实现字符串替换c语言实现字符串替换c语言实现字符串替换c语言实现字符串替换c语言实现字符串替换c语言实现字符串替换c语言实现字符串替换c语言实现...

    vim 全文字符串替换

    ### Vim全文字符串替换 在日常的编程或文本编辑过程中,我们经常会遇到需要对大量文本进行字符串替换的需求。尤其是在处理从Windows系统复制到Linux系统中的文本时,常常会遇到换行符不兼容的问题,例如文中提到的`...

    Delphi字符串快速替换函数,速度超快 秒杀自带的StringReplace函数

    针对这种情况,开发人员经常寻找更高效的替代方案,如在本案例中提到的“Q_Replace.pas”文件所包含的快速字符串替换函数。 `StringReplace`函数的语法如下: ```delphi function StringReplace(const S, Find, ...

    字符串替换java类

    字符串替换java类 具体应用:例如把utf-8替换成gb2312

    linux 下c写的字符串替换

    字符串操作是C语言编程中的基础部分,而字符串替换则是处理文本数据时常见的需求。本文将深入探讨如何在Linux下使用C语言实现字符串替换的功能。 首先,我们需要理解C语言中的字符串。在C语言中,字符串是由字符...

    fortran分割字符串和字符串替换的子程序_Fortran_

    下面是一个简单的字符串替换示例: ```fortran function replace_string(input_string, old_substring, new_substring) result(output_string) character(len=*), intent(in) :: input_string, old_substring, ...

    一个批量字符串替换小工具

    批量字符串替换小工具,支持自定义文件扩展名,包含目录及子目录。

    比CString更高效的字符串替换

    本话题聚焦于一个优化过的字符串替换方法,针对原生MFC库中`CString::Replace`函数性能问题进行改进。`CString`是Microsoft Foundation Class (MFC) 库中的一个类,用于方便地处理和操作字符串,但有时其性能可能不...

    字符串查找与替换程序 文件

    本文将详细介绍字符串替换函数的实现过程和原理,该函数用于将指定字符串中指定的字符串替换为新的字符串。同时,本文还将对Java语言中的字符串处理进行详细介绍。 字符串替换函数 字符串替换函数是一个常用的字符...

Global site tag (gtag.js) - Google Analytics