如何删除字符串中指定位置的内容
找到被删除字符串的坐标,被删除字符串前面的内容就是0到坐标的位置。 而被删除字符串坐标后面的坐标 就是 被删除字符串所在坐标加上自己的长度就是了。同样的概念放在替换也是一样
package com.alvin.service.impl;
import com.alvin.service.StringUtilService;
/**
* 字符串工具
*/
public class StringUtilServiceImpl implements StringUtilService {
/**
* 指定的字符串返回新的字符串
*
* @param fullStr 原字符串
* @param oldStr 需要修改的内容
* @param partStr 需要替换的内容
* @return
*/
public String getPartString(String fullStr, String oldStr, String partStr) {
int index = fullStr.indexOf(oldStr); //找到字符串的定位
String newStr = fullStr.substring(0,index); //获得需要修改的字符串前面内容
String lastStr = fullStr.substring(index + oldStr.length()); //获得后面的内容 就是被删除的坐标加上长度
return newStr + partStr + lastStr;
}
/**
* 删掉指定的字符串返回新的字符串
*
* @param oldStr 原字符串
* @param partStr 需要删掉的内容
* @return
*/
public String DelPartString(String oldStr, String partStr) {
int index = oldStr.indexOf(partStr); //找到字符串的定位
String newStr = oldStr.substring(0,index); //获得需要修改的字符串前面内容
String lastStr = oldStr.substring(index + partStr.length()); //获得后面的内容 就是被删除的坐标加上长度
return newStr + lastStr; //最终结果就是删除前面的内容 和 删除后面的内容
}
public static void main(String[] args) {
StringUtilService stringUtilService = new StringUtilServiceImpl();
System.out.println(stringUtilService.DelPartString("alvin","vi"));
System.out.println(stringUtilService.getPartString("alvin","vi","oh"));
}
}