java - 在 JAVA 中查找两个不同的子字符串并打印它们之间的所有内容

标签 java arrays substring character-arrays

String theString="gtcaatgccaataaagt";
char[] charArray = theString.toCharArray();
int len=theString.length();
boolean start = false,end1 = false;
for(int i=0;i<len;i++){
    if(charArray[i]=='a' && charArray[i+1]=='t' && charArray[i+2]=='g'){
        start=true;
    }
    if(charArray[i]=='t' && charArray[i+1]=='a' && charArray[i+2]=='a'){
        end1=true;
    }
}
while(start==true && end1==true){
    for(int i=0;i<len;i++){
        System.out.println(charArray[i]);
    }
}

我想打印字符串“theString”中“atg”和“taa”之间的字符... 但通过上面的代码我得到了 java.lang.ArrayIndexOutOfBoundsException。 不知道如何处理它......我认为错误是在第一个for循环......但我不知道如何先读取“atg”然后读取“taa”

最佳答案

这样的东西对你有用:

public static void main(String[] args) {
    String s = "abcdefghijk";
    int i1 = s.indexOf("cd")+2; // add index + length of substring (i.e, 2)
    int i2 = s.indexOf("ij");
    System.out.println(s.substring(i1,i2));

}

O/P :
efgh

关于java - 在 JAVA 中查找两个不同的子字符串并打印它们之间的所有内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28984305/

相关文章:

java - 允许 java 程序自动更新的小类

regex - 字符串提取 : Understanding weird output

Java正则表达式查找子字符串

java - 如何从 WSDL URL 生成 WSDL 文件?

java - Java中隐藏的静态方法

java - Android RecyclerView 无法呈现 SurfaceView

java - Java中如何从一个字符串中获取多个变量集

c++ - 为什么我不能在C++中填充此2D数组?

c++ - 通过 make_shared 用 shared_ptr 包装动态数组

c++ - 查找字母子串