// java中如何查询一个指定的子字符在字符串中出现的次数的下标索引

// java中如何查询一个指定的子字符在字符串中出现的次数的下标索引
import java.util.ArrayList;
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Main{
    public static void main(String[] args){
        Scanner scan = new Scanner(System.in);
        System.out.println("请输入一个字符串");
        String strA = new String();
        String strB = new String();
        strA = scan.nextLine();
        strB = scan.nextLine();
        Pattern pattern = Pattern.compile(strB);
        Matcher matcher = pattern.matcher(strA);
        int count= 0;
        while (matcher.find()){
            count++;
            System.out.println(matcher.start());
        }
        System.out.println(count);
    }
}

 

// java中如何查询一个指定的子字符在字符串中出现的次数的下标索引
import java.util.ArrayList;
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Main{
    public static void main(String[] args){
        Scanner scan = new Scanner(System.in);
        System.out.println("请输入一个字符串");
        String strA = new String();
        String strB = new String();
        strA = scan.nextLine();
        strB = scan.nextLine();

        int aLength = strA.length();
        int bLength = strB.length();
        int start = 0;
        int count = 0;
        while(strA.substring(start,aLength).length() >= bLength && strA.substring(start,aLength).indexOf(strB)!=-1){
            if(strA.substring(start,aLength).indexOf(strB ) != -1){
                count ++;
                System.out.println("index"+ (start + strA.substring(start,aLength).indexOf(strB)));
                start = start + strA.substring(start,aLength).indexOf(strB) + bLength;
            }
        };
    }
}