특수 문자가 포함 된 문자열 (숫자)이 있습니다. 하위 문자열 (숫자로만 구성된)을 검색하고 싶습니다. & 또한 시작 인덱스 & 문자열에서 일치하는 하위 문자열의 끝 인덱스를 검색하고 싶습니다. 예를 들어 : 주요 캐릭터 : (91) -1231212 1231
하위 문자열 검색하기 : 1212어떻게 이것을 Android 용으로 작성할 수 있습니까?
을 현재 내가하지만 1212 대신에이 작업을 수행하려면 다음 코드를 사용하고, 그것을 을 검색했습니다. 다른 경우에는 잘 작동합니다.
String sss0 = "1212";
String sss1 = "(+91)-1231212 1231";
sss0 = sss0.replaceAll("[^\\d]","");
System.out.println("*************************"+sss0);
String ptn = "" + sss0.charAt(0);
for(int jj=0; jj<sss0.length()-1; jj++){
ptn += "[^" + sss0.charAt(jj) + sss0.charAt(jj+1) + "]*?" + sss0.charAt(jj+1);
}
System.out.println("ptn: " + ptn);
Pattern p300 = Pattern.compile(ptn);
Matcher m300 = p300.matcher(sss1);
if(m300.find()){
System.out.println("start, stop: " + m300.start() + "," + (m300.end()-1));
System.out.println("substring: " + sss1.substring(m300.start(), m300.end()));
}
도와주세요. 미리 감사드립니다.
9 개의 질문, 0 % 허용 ... 아니요 thanks – SJuan76
간단한 'indexOf()'를 사용하지 않는 이유는 무엇입니까? – fge
안녕하세요, 답장을 보내 주셔서 감사합니다. 실제로 하위 문자열을 검색하는 동안 주 문자열에서 특수 문자를 무시해야합니다. –