java字符串替换函数高效实现
public static String removeStr(String src, String str) {
if (src == null || str == null) return src;
int idx = src.indexOf(str);
if (idx == -1) return src;
int pst = 0;
char[] cs = src.toCharArray();
char[] rs = new char[src.length() - str.length()];
for (int i = 0; i < cs.length; i ++) {
if (i >= idx && i < idx + str.length()) continue;
rs[pst] = cs[i];
pst ++;
}
return new String(rs);
}
public static String replaceStr(String src, String target, String replacement) {
if (src == null || target == null || replacement == null) return src;
int idx = src.indexOf(target);
if (idx == -1) return src;
int pst = 0;
char[] cs = src.toCharArray();
char[] rs = new char[src.length() - target.length() + replacement.length()];
for (int i = 0; i < cs.length; i ++) {
if (i == idx) {
for (char c : replacement.toCharArray()) {
rs[pst] = c;
pst ++;
}
continue;
}
if (i > idx && i < idx + target.length()) continue;
rs[pst] = cs[i];
pst ++;
}
return new String(rs);
}
/**
*
* @param src
* @param target
* @param replacement
* @return
*/
public static String replaceAllStr(String src, String target, String replacement) {
if (src == null || target == null || replacement == null) return src;
int idx = src.indexOf(target);
if (idx == -1) return src;
int pst = 0;
char[] cs = src.toCharArray();
char[] rs = new char[src.length() - target.length() + replacement.length()];
for (int i = 0; i < cs.length; i ++) {
if (i == idx) {
for (char c : replacement.toCharArray()) {
rs[pst] = c;
pst ++;
}
continue;
}
if (i > idx && i < idx + target.length()) continue;
rs[pst] = cs[i];
pst ++;
}
return replaceAllStr(new String(rs), target, replacement);
}
java字符串替换函数高效实现的更多相关文章
- Java字符串替换函数replace、replaceFirst、replaceAll
一.replace(String old,String new) 功能:将字符串中的所有old子字符串替换成new字符串 示例 String s="Hollow world!"; ...
- java 字符串替换函数replaceAll 一次同时替换多个字符串
public static void main(String[] args) throws Exception { String src = "南京市玄武区北京东路徐州市鼓楼区戏马台&quo ...
- JS字符串替换函数:Replace(“字符串1″, “字符串2″),
JS字符串替换函数:Replace(“字符串1″, “字符串2″), 1.我们都知道JS中字符串替换函数是Replace(“字符串1″, “字符串2″),但是这个函数只能将第一次出现的字符串1替换掉, ...
- JAVA字符串处理函数列表一览
JAVA字符串处理函数列表一览 Java中的字符串也是一连串的字符.但是与许多其他的计算机语言将字符串作为字符数组处理不同,Java将字符串作为String类型对象来处理.将字符串作为内置的对象处 ...
- sql server 字符串替换函数REPLACE
sql server 字符串替换函数REPLACE函数的使用 <pre name="code" class="sql">--参数1:需要替换字符的母 ...
- php中几个字符串替换函数详解
在php中字符替换函数有几个如有:str_replace.substr_replace.preg_replace.preg_split.str_split等函数,下面我来给大家总结介绍介绍. 一.st ...
- PHP字符串替换函数
str_replace函数 描述:实现字符串替换,区分大小写 语法:mixed str_replace(mixed $search, mixed replace, mixed $subject, [i ...
- Java字符串替换忽略大小写
今天在做字符串替换时忽略大小写,网上找到了一个非常简便的方法,使用String的replaceAll方法. java.lang.String.replaceAll(String regex, Stri ...
- sql server 数据字符串替换函数
sql server 替换函数 replace 函数参数 REPLACE(string_expression, string_pattern, string_replacement) 1.string ...
随机推荐
- Linux下解压命令
.tar.xz 先用命令[xz -d ***.tar.xz]解压,然后用[tar xvf ***.tar]解包 也可以直接用命令[tar xvJf ***.tar.xz]解压
- 在Linux命令行窗口中,怎么向上翻页?
解决方法:本机环境:vmware linux Redhat9.0版本 使用:Shift + PageUp 和 Shift + PageDown向上和向下翻页
- 遇到困难 jsp代码onclick="javascript:return(checklogin());"报错
<script language="javascript"> function checklogin() { if (document.getElementById(& ...
- Web 应用程序项目 MvcApplication1 已配置为使用 IIS。
今天网上下了一个项目,加载不了,并报如下错误: Web 应用程序项目 MvcApplication1 已配置为使用 IIS. 若要访问本地 IIS 网站,必须在管理员帐户的上下文中运行 Visual ...
- 64位操作系统弹出"Failed to load the JNI shared library “E:/2000/Java/JDK6/bin/..jre/bin/client/jvm.dll”
64位操作系统弹出"Failed to load the JNI shared library /..jre/bin/client/jvm.dll”,最大的可能就是jdk的版本问题.去你的C ...
- kettle的hello world
本篇介绍使用kettle的一个最简单的例子,可以初步了解下转换. 需求是这样的: 存在一个本地csv文件,文件的内容如下 现在需要将csv中的数据保存到本地的文本文件中 1.创建一个转换,并且重命名 ...
- centos6.7下网络设置
vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE="eth0"BOOTPROTO="static" # ...
- Yii整合ZF2及soap实例
一)如何整合? // change the following paths if necessary $yii = dirname(__FILE__).'/framework/yii.php'; $c ...
- php怎么删除文件
php怎么删除文件 删除文件很简单只要使用unlink(文件名)就可以了.
- 安装Spark集群(在CentOS上)
环境:CentOS 6.4, Hadoop 1.1.2, JDK 1.7, Spark 0.7.2, Scala 2.9.3 1. 安装 JDK 1.7 yum search openjdk-deve ...