String text;
System.out.println(text);
콘솔에서 다음과 같이 보입니다.
The US.....................................
Illinois Commerce .......... ..............
...........................................
..........................Illinois Commerce
두 번째 부분 문자열을 제거해야합니다. Illinois Commerce
이것이 내가 시도한 것입니다.
text = text.replaceAll("(?:Illinois Commerce:.*?){2}", "");
나는 얻다 java.lang.ArrayIndexOutOfBoundsException: 1
나는 이것을 위해 정규식을 사용하지 않을 것입니다. 내가 할 일은 :
"Illinois Commerce"
index + 1
끝까지 부분 문자열을 가져 옵니다."Illinois Commerce"
해당 하위 문자열에서를 대체하십시오 . 이 부분 문자열에서 완전히 사용할 수 없기 때문에 첫 번째 발생을 대체하지 않도록합니다 .코드는 다음과 같습니다.
int index = text.indexOf("Illinois Commerce");
String result = text.substring(0, index + 1) +
text.substring(index + 1).replace("Illinois Commerce", "");
System.out.println(result);
text.substring(0, index + 1)
I
첫 번째 까지 문자열을 Illi....
받습니다.
text.substring(index + 1)
l
처음 Illi....
부터 문자열의 끝까지 시작됩니다 . 따라서 교체 할 유일한 문자열은 두 번째 발생입니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다