문자열에서 백슬래시 이스케이프
replaceAll() 메서드를 사용하여 "something"과 같은 문자열을 "something"으로 변환하려고 하면 백슬래시 문자를 잘못 해석하여 오류가 발생할 수 있습니다.
문제가 발생합니다. 백슬래시()는 문자열과 정규식 모두에서 이스케이프 문자이기 때문입니다. replacementAll()과 함께 사용하기 위해 정규식에서 올바르게 이스케이프하려면 다음과 같이 두 번 이스케이프해야 합니다.
theString.replaceAll("\\", "\\\\");
그러나 이 방법에서는 패턴 일치에 정규식을 사용한다고 가정합니다. 단순히 문자 단위로 바꾸는 것이 목표라면 대신에 replacement() 메서드를 사용할 수 있습니다.
string.replace("\", "\\");
이렇게 하면 정규 표현식을 사용하지 않고 백슬래시를 정확하게 교체할 수 있습니다.
JavaScript 컨텍스트에 대한 참고 사항
문자열이 JavaScript 컨텍스트에서 사용되도록 의도된 경우 다음을 사용하는 것이 좋습니다. 안전을 위해 추가 특수 문자를 이스케이프하는 StringEscapeUtils#escapeEcmaScript():
StringEscapeUtils.escapeEcmaScript(string);
위 내용은 Java 문자열에서 백슬래시를 올바르게 이스케이프하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!