\ n 및 \ r \ n을
Java로 바꿉니다.
여러 언어에 대해 여러 번 요청되었지만 작동하지 않습니다. 나는 이와 같은 문자열이
String str = "This is a string.\nThis is a long string.";
그리고 난을 대체하기 위해 노력하고있어 \n
함께 <br />
사용
str = str.replaceAll("(\r\n|\n)", "<br />");
그러나 \n
대체되지 않습니다. 이 RegEx 도구 를 사용하여 확인 하려고했는데 동일한 결과가 나타납니다. 입력 문자열에 일치하는 항목이 없습니다 "(\r\n|\n)"
. 내가 도대체 뭘 잘못하고있는 겁니까 ?
그것은 나를 위해 작동합니다.
public class Program
{
public static void main(String[] args) {
String str = "This is a string.\nThis is a long string.";
str = str.replaceAll("(\r\n|\n)", "<br />");
System.out.println(str);
}
}
결과:
문자열입니다. <br /> 긴 문자열입니다.
당신의 문제는 다른 곳에 있습니다.
당신이 시도하는 것의 좀 더 강력한 버전 :
str = str.replaceAll("(\r\n|\n\r|\r|\n)", "<br />");
나를 위해 이것은 일했습니다.
rawText.replaceAll("(\\\\r\\\\n|\\\\n)", "\\\n");
팁 : 환경에서 컴파일하지 않고 빠른 테스트를 위해 정규식 테스터 를 사용 하십시오.
내 계정이 새 계정이므로 Nino van Hooff의 답변에 찬성 투표를 할 수 없습니다. 문자열이 aspx 기반 서버와 같은 Windows 기반 소스에서 오는 경우이 솔루션이 작동합니다.
rawText.replaceAll("(\\\\r\\\\n|\\\\n)", "<br />");
이중 백 슬래시가 단일 슬래시 이스케이프 문자로 해석되므로 이상한 문자 집합 문제인 것 같습니다. 따라서 위의 사중 슬래시가 필요합니다.
다시 말하지만 대부분의 상황에서 "(\\r\\n|\\n)"
작동하지만 문자열이 Windows 기반 소스에서 오는 경우 위의 방법을 시도하십시오.
FYI는 그 줄 끝을 바꾸는 문제를 해결하기 위해 모든 것을 시도했습니다. 처음에는에서 로의 변환에 실패 Windows-1252
했다고 생각했습니다 UTF-8
. 그러나 그것도 작동하지 않았습니다. 이 솔루션이 마침내 트릭을 수행했습니다. :)
그것은 나를 위해 작동합니다. Java 코드는 작성한 그대로 작동합니다. 테스터에서 입력 문자열은 다음과 같아야합니다.
This is a string.
This is a long string.
... 실제 줄 바꿈으로. 다음을 사용할 수 없습니다.
This is a string.\nThis is a long string.
... \n
문자열 백 슬래시 'n' 으로 취급하기 때문 입니다.
그것은 효과가 있지만 그것을 알아 내려고 자신을 죽이지 마십시오. 2 패스 만 사용하세요.
str = str.replaceAll("(\r\n)", "<br />");
str = str.replaceAll("(\n)", "<br />");
면책 조항 : 이것은 매우 효율적이지 않습니다.
작동합니다. 두 개의 슬래시를 넣어야합니다
str = str.replaceAll("(\\r\\n|\\n)", "<br />");
이 참고 자료 에는 다음 을 보여주는 예가 있습니다.
private final String REGEX = "\\d"; // a single digit
많은 프로젝트에서 두 개의 슬래시를 사용했는데 제대로 작동하는 것 같습니다!
참고 URL : https://stackoverflow.com/questions/3056834/replace-n-and-rn-with-br-in-java
'developer tip' 카테고리의 다른 글
Android Studio에 잘못된 파일 내용이 표시됨 (0) | 2020.11.23 |
---|---|
사용자가 사용자 컨트롤 Asp.net MVC에 로그인했는지 확인 (0) | 2020.11.23 |
OS 또는 장치 유형과 같은 시스템 정보를 감지하는 방법 (0) | 2020.11.23 |
열거 형을 목록으로 변환하는 방법 (0) | 2020.11.23 |
Java에서 두 개의 PDF 파일을 하나로 병합하는 방법은 무엇입니까? (0) | 2020.11.23 |