最近我做一个日志框架的开发,为了对性能进行优化,我要获取字符串的开始位置和结束位置来做替换。所以我就遇到了这个问题,没找到好的API,没办法,只能自己写了。
我直接将工具类的代码copy出来,给有需要用的人:
/**
* 获取一个字符串的开始位置和结束位置
*
* @param v 源字符串
* @param find 需要查找的字符串
* @return 数组 0=开始位置 1=结束位置
*/
public static int[] getStringStartAndEndIndex(String v, String find) {
int start = -1; // 开始下标
int end = -1; // 结束下标
int currentIndex = 0; // 当前下标 -1等于当前源字符串长度已遍历完
char[] source = v.toCharArray(); // 源字符串char数组
char[] target = find.toCharArray();
while (source.length >= currentIndex) {
boolean result = true;
for (int i = 0; i < target.length; i++) {
if (source[currentIndex] == target[i]) {
result = true;
}else{
result = false;
currentIndex+
版权声明:本文为weixin_30126409原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。