String 클래스의 replaceAll 메소드의 이상한 동작을 직면하고 있습니다.이상한 문자열의 replaceAll 메소드의 동작
은 내가 "keyRPT11=08|keyRPT19=01"
난에 대한 코드 아래 사용하고
"keyRPT11=08|keyRPT19=2"
와 그
String complementaryInformation = "keyRPT1={keyRPT11=01|keyRPT19=01}|keyRPT3={keyRPT11=03|keyRPT19=01}|keyRPT8={keyRPT11=08|keyRPT19=01}";
complementaryInformation = complementaryInformation.replaceAll("keyRPT11=08|keyRPT19=01","keyRPT11=08|keyRPT19=2");
완전히 대체주고 대체하는 데이터
keyRPT1={keyRPT11=01|keyRPT19=01}|keyRPT3={keyRPT11=03|keyRPT19=01}|keyRPT8={keyRPT11=08|keyRPT19=01}
내가 코드 아래에 쓰기 아래에 포함 된 문자열 버퍼를 가지고 나 예기치 않은 출력
,928,내가 방법을 대체 사용하고 때 다음 내가 바로 출력
keyRPT1={keyRPT11=01|keyRPT19=01}|keyRPT3={keyRPT11=03|keyRPT19=01}|keyRPT8={keyRPT11=08|keyRPT19=2}
어떤 생각들을거야 ??
하지만 replace 메소드를 호출 할 때도 동일하게 작동합니다. 왜 그렇게 되니? –
@MahendraAthneria : Rubrick의 답변을 참조하십시오. 'replace'는 정규식을 사용하지 않습니다. 두 가지 방법이 다르게 작동하는 이유에 대해 혼란 스러울 때 ** 설명서를 먼저 참조하십시오 **. –
@Mahendra :'replaceAll()'메소드는 regex 패턴을 첫 번째 매개 변수로 사용합니다. 'replace()'메소드는 정규 표현식을 매개 변수로 사용하지 않습니다. –