java字符串中怎么去掉指定字符的前一个字符

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java字符串中怎么去掉指定字符的前一个字符相关的知识,希望对你有一定的参考价值。

如果不会重复的话
String s = "afhakhfakshfka_key_adasfasfa" 目标字符串,KEY就用"key"
int index = s.indexOf("key") 获取出现key字符串的第一个位置,这里要保证前面没有跟KEY重复
String left = s.substring(index) 截取KEY出现位置前面的字符串
String right = s.sbustring(index+3) 后面的字符串, +3 是key的长度为3 (KEY的值长度)
参考技术A 比如你想去掉一个字符串的第3个字符的前一个,你可以用charAt指定字符-2的位置变成空

java 读取读取指定字符的前一字符

在一个文本文件中,关键字假设为abc,并且从abc开始到行末还存在bcd,
读出这样的行,并且读出abc的前一个字符。读出这样的行已经实现,关键是前一个字符。

参考技术A //str 源字符串
//ch 指定字符串
public static String getBeforeChar(String str, String ch)

int index;
index = str.indexOf(ch); //获取指定字符串起始位置
return str.substring(1,index - 1); 从源字符串中获取指定字符串前的字符串
//如果要从源字符串中获取指定字符串前一个字符可以改成
return str.substring(index - 2,index - 1);


这样写比较灵活。
参考技术B public char getPreviousChar(String string,char aChar)
for(int i=0;i<string.length();i++)
if(string.charAt(i)==aChar&&i>0)
return string.charAt(i-1);//返回前一个字符


return null;//没有查到返回空

调用这个方法就可以了。追问

不是开始就是关键字,而且肯定不是。

追答

说的模糊啊,没理解到底要实现什么功能。上面的函数能够查找一行中关键字的前一个字符啊,当然关键字如果在第一位,会返回为空。你自己说了读取包含“abcXXXXXXbcd”这样的行已经实现,那么你只需要把读取的这一行(假设这一很的内容是“hijkabcXXXXXXbcd”)传入到上面的函数进行查找,假设你的指定字符就是“a”,函数就会返回K。

追问

明白了。我犯2了。多谢。。

本回答被提问者和网友采纳
参考技术C 得到指定字符的下标 然后 将下标减一 就能得到字符串的前一个字符了 参考技术D String s = "1234tgasdfsdf";
String[] sarray = s.split("要切分的制定字符");
if(sarray!=null)
sarray[0].charAt(sarray[0].length()-1);//这个值
第5个回答  2012-09-25 可以根据符号分割一下,然后再截取读取

以上是关于java字符串中怎么去掉指定字符的前一个字符的主要内容,如果未能解决你的问题,请参考以下文章

java 读取读取指定字符的前一字符

JAVA String 怎么去掉指定字符

JAVA String 如何去掉指定字符

JAVA 删除字符串中指定的字符

java怎么得到指定字符之后的字符串

java里怎么输入多行字符 且以指定的字符结束