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字符串替换函数高效实现的更多相关文章

  1. Java字符串替换函数replace、replaceFirst、replaceAll

    一.replace(String old,String new) 功能:将字符串中的所有old子字符串替换成new字符串 示例 String s="Hollow world!"; ...

  2. java 字符串替换函数replaceAll 一次同时替换多个字符串

    public static void main(String[] args) throws Exception { String src = "南京市玄武区北京东路徐州市鼓楼区戏马台&quo ...

  3. JS字符串替换函数:Replace(“字符串1″, “字符串2″),

    JS字符串替换函数:Replace(“字符串1″, “字符串2″), 1.我们都知道JS中字符串替换函数是Replace(“字符串1″, “字符串2″),但是这个函数只能将第一次出现的字符串1替换掉, ...

  4. JAVA字符串处理函数列表一览

    JAVA字符串处理函数列表一览   Java中的字符串也是一连串的字符.但是与许多其他的计算机语言将字符串作为字符数组处理不同,Java将字符串作为String类型对象来处理.将字符串作为内置的对象处 ...

  5. sql server 字符串替换函数REPLACE

    sql server 字符串替换函数REPLACE函数的使用 <pre name="code" class="sql">--参数1:需要替换字符的母 ...

  6. php中几个字符串替换函数详解

    在php中字符替换函数有几个如有:str_replace.substr_replace.preg_replace.preg_split.str_split等函数,下面我来给大家总结介绍介绍. 一.st ...

  7. PHP字符串替换函数

    str_replace函数 描述:实现字符串替换,区分大小写 语法:mixed str_replace(mixed $search, mixed replace, mixed $subject, [i ...

  8. Java字符串替换忽略大小写

    今天在做字符串替换时忽略大小写,网上找到了一个非常简便的方法,使用String的replaceAll方法. java.lang.String.replaceAll(String regex, Stri ...

  9. sql server 数据字符串替换函数

    sql server 替换函数 replace 函数参数 REPLACE(string_expression, string_pattern, string_replacement) 1.string ...

随机推荐

  1. 捣蛋phpwind之WindFrameWork

    一直都有关注phpwind这个开源产品,从9.0开始就好关注拉,因为官方说把之前的代码重写了一遍,融入了windFramework这个框架,代码真的挺优美的,今日在做社区的一些功能,心血来潮就参考了p ...

  2. 音乐社交APP源码 V1.1

    1.关于音乐曲库,对接的是百度音乐,会自动随搜索链接百度曲库2.便捷聊天,采用xmpp基本架构.3.加入和整理了群聊天.4.分布式聊天,喜欢该专辑直接进入聊天,喜欢该音乐的进入聊天.5.采用兴趣社交和 ...

  3. JAVA编程思想第一题出现错误

    //: object/E01_DefaultInitialization.java public class E01_DefaultInitialization{ int i ; char c ; p ...

  4. css3内处理

    1.插入文字:content属性:          p:after{content:"内容"}          p:before{content:"内容"} ...

  5. POJ C程序设计进阶 编程题#1:含k个3的数

    编程题#1:含k个3的数 来源: POJ (Coursera声明:在POJ上完成的习题将不会计入Coursera的最后成绩.) 注意: 总时间限制: 1000ms 内存限制: 65536kB 描述 输 ...

  6. CentOS 7服务

    重启防火墙service firewalld start/restart/stop 使用systemctl来启动/停止/重启服务要启动一个服务,你需要使用如下命令:# systemctl start ...

  7. C# DataGridViewComboBoxColumn 数据绑定

    dataGridView1.Columns.Clear(); dataGridView1.AutoGenerateColumns = false; dataGridView1.DataSource = ...

  8. DataGridView控件中添加ComboBox下拉列表框的实现

    //ComboBox控件拖放到DataGridView控件的某个位置 //添加年龄下拉框 private void BindAge() { //我这里添加的是静态数据,一般都是从数据库读出来的,这里就 ...

  9. 配置pxe 自动化安装centos6.7

    dhcp服务器是pxe自动化安装的必要条件,因此先搞定dhcp服务器,yum -y install dhcp,  rpm -ql dhcp查看安装了哪些包,less /etc/dhcp/dhcpd.c ...

  10. DevExpress之ASPxGridView笔记(1)

    1.设置Row(某列)输出格式,例如,在数字前加美元符.每3位以逗号隔开及设置小数点后两位: <dx:GridViewDataTextColumn FieldName="SHOUHUI ...