다른 곳의 다른 CRLF 코드에 영향을 주지 않고 빈 줄의 CRLF를 \n으로 변환하는 방법

다른 곳의 다른 CRLF 코드에 영향을 주지 않고 빈 줄의 CRLF를 \n으로 변환하는 방법

저는 가족 역사 미니 소설을 집필 중이며 다른 PC에서 작업하고 있습니다.

나는 내 워드 프로세서에 이전 버전의 UltraEdit을 사용했습니다. 그러나 XP 이후에는 Windows와 호환되지 않았습니다. Windows 7에서 작동하도록 하는 방법에 대한 게시물을 어딘가에서 읽었으며 Windows 10 노트북으로 데이터를 전송해도 살아남았습니다. 그러던 어느 날 고장이 나서 고칠 수 없었습니다. 그래서 많은 친구들이 UltraEdit 13보다 낫다며 Notepad++를 사용해 보라고 권했습니다. Notepad++에서 작업하려고 했는데 서식이 깨졌습니다. 한 줄에 있던 문단이 화면 가장자리에 자동으로 줄 바꿈되는 대신 내가 쓴 것처럼 그 사이에 빈 줄이 모두 끊어졌습니다. "기호 표시"를 켰고 대신 각 단락 줄 끝에 하나의 CRLF가 있고 그 뒤에 빈 줄에 대한 CRLF가 있었는데 그 안에 여러 개의 CRLF가 있었습니다. 내가 원했던 것보다 약 200% 더 많은 곡으로.

Notepad++에서 어떻게 보이는지 보여주기 위해 여기에 몇 가지 텍스트를 입력하려고 했지만 이 메시지 게시판에서는 그래야 하는 것처럼 보이도록 수정했습니다. 그래서 어떤 모습인지 보여줄 수가 없어요. 그러나 여기 어딘가에서 이것을 찾았습니다. \R(?!\R)에 대해 RegEx 검색\교체를 수행하면 단락의 줄이 수정됩니다. 그런데 문단 사이에 빈 줄을 넣고 싶었어요. 아무 생각 없이 넣기 때문이죠. 이제 단락당 하나의 CRLF만 있으므로 이미 작성된 단락 사이에 줄이 생성되도록 텍스트가 있는 각 줄 끝에 \n을 추가하는 RegEx 검색\바꾸기가 있습니까? 이것이 나를 미치게 만든다. 하지만 UltraEdit을 업데이트할 여유가 없습니다. 그리고 어쨌든 나는 새 버전이 마음에 들지 않을 것입니다 ...

답변1

잘 이해했는지 모르겠지만 다른 줄 바꿈이 선행되거나 뒤에 오지 않는 경우에만 줄 바꿈을 제거하고 싶습니다.


이 작업을 수행합니다.

  • Ctrl+H
  • 무엇을 찾다:(\R\R)\R*|\R
  • 다음으로 교체:$1
  • 선택하다 정규식
  • Replace all

설명:

(\R\R)      # 2 linebreaks (i.e. paragraphs spacing)
\R*         # 0 or more linebreaks, optional
|           # OR
\R          # a single linebreak

대사:

$1          # content of group 1, 2 linebreaks

답변2

Notepad++에서 쉽게 수정할 수 있습니다.

  • CtrlH검색/바꾸기 대화 상자를 보려면 누르세요 .

이중 EOL 교체

  • 세트검색 모드에게펼친.

  • 입력 \r\n\r\n하다무엇을 찾다:, 즉 CR 및 LF 문자의 중괄호입니다.

  • 입력 \r\n\하다다음으로 교체:.

  • 딸깍 하는 소리모두 다 바꿔.

    해당 버튼을 클릭할 때마다 중복되는 CR/LF 쌍의 수가 감소합니다.문서 전체에 걸쳐.이것은하나의각 단락의 끝에서 줄 바꿈. 위의 인수를 다음으로 전환하십시오.더블줄 간격.

일관성을 원한다면이중선간격

  • 변화모두에게하나의위의 그림과 같이 줄 간격을 지정합니다.
  • 그런 다음 모두를 검색 \r\n하고 \r\n\r\n,한 번.

훨씬 더 고급 검색 기능을 사용할 수 있습니다.정규식.

관련 정보