메모장에서 빈 줄 제거하기 ++


384

메모장 ++에서 빈 줄을 어떻게 바꿀 수 있습니까? 찾기에서 빈 줄로 찾기 및 바꾸기를 시도했지만 교체에서는 아무것도 없었지만 작동하지 않았습니다. 아마 정규 표현식이 필요할 것입니다.

답변:


395

정규식과 같은 것이 필요합니다.

당신은 Extended모드 에 있어야 합니다

당신이 원하는 경우 모든 라인은에 끝날하는 한 줄의 사용 \r\n. 줄 을 단순히 제거 하려면 \n\r@Link가 원래 제안한대로 사용하십시오 .

두 표현식 중 아무 것도 바꾸지 마십시오.


21
검색 모드에서 먼저 '확장'을 선택해야합니다.
q0987

14
라인을 연결하지 않으려면로 검색 \r\n\r\n하고 바꿔야합니다 \r\n.
Robert Kaucher

1
아래 @BoltClock의 의견을 참조하십시오. 또한 파일이 Unix 줄 끝으로 저장된 경우 찾기 및 바꾸기를 수행하기 전에 편집> EOL 변환> Windows 형식에서 파일을 Windows 줄 끝으로 변환 할 수 있습니다.
Big McLargeHuge

9
공백과 탭만 있거나 아무것도없는 행을 제거하려면 정규식 바꾸기를 사용하여 일치 \r\n\W*\r\n하고 바꾸십시오.\r\n
Myster

2
@ ST3 흠 내가 생각했던 것, 이것은 훨씬 낫다 : 행동으로 (\r\n|\r|\n)(\s*(\r\n|\r|\n))+대체 \r\n하십시오 : regex101.com/r/qD9dB1/1
Myster

567

버전 6.5.2부터이를 수행하는 기본 제공 방법이 있습니다.

Edit -> Line Operations -> Remove Empty Lines 또는 Remove Empty Lines (Containing Blank characters)

빈 줄 제거 스크린 샷


불행히도 이것은 선택 사항을 고려하지 않으며 파일 중 일부만 선택한 경우에도 파일의 모든 빈 줄을 삭제합니다.
Fabio는

이 작업이 한 번만 수행되면 선택한 행을 새 notepad ++ 탭으로 추출하여 해당 작업을 수행 할 수 있습니다. 5 초 동안 복사하여 붙여 넣기 절차. 그 당시에 달성 할 수없는 다른 해결 방법은 제 생각에는 낭비입니다. 그러나 당신이 매일 100 번 그렇게하고 있다면 ...
creed

나는 이것을 사용하고 있었지만 (내 단축키도 할당되었지만) 위의 옵션보다 훨씬 느리므로 똑똑하게 사용하십시오.
Betlista

122

라는 제목의 메뉴를 추가하는 플러그인이 TextFX있습니다. 현기증 나는 빠른 텍스트 편집 옵션이있는이 메뉴는 빠른 코딩 변경을 할 수있는 기능을 제공합니다. 이 메뉴에서 인용 부호 삭제, 빈 줄 삭제 및 텍스트 줄 바꾸기 및 줄 바꾸기와 같은 선택 항목을 찾을 수 있습니다.

다음을 수행하십시오.

TextFX > TextFX Edit > Delete Blank Lines
TextFX > TextFX Edit > Delete Surplus Blank Lines

7
시기는 확실하지 않지만이 플러그인은 기본적으로 설치되어있는 것 같습니다. 주제에서 약간 벗어난 주제이지만 아래에있는 매우 유용한 다른 기능 중 하나는 TextFX > TextFX Tools선택적으로 중복 항목을 제거하는 행 정렬입니다. sort -ucygwin 또는 unxutils 등이없는 Windows 상자 에서 유닉스 를 수행하는 매우 편리한 방법입니다 .
Cam Jackson

3
다음은 TextFx 플러그인에 대한 링크입니다. 나는 그것이 매우 유용하다는 것을 알았습니다. 사용 : Settings > Import > plugin...dll 파일을 찾아 설치하십시오. Plugins
Nicholas Pickering

1
열려있는 모든 문서 또는 한 번에 하나의 문서에서 작동합니까?
Derelict

76
  1. 메모장 ++
  2. Ctrl-H
  3. 정규식 선택
  4. 내용을 입력 ^[ \t]*$\r?\n하고 바꾸기를 비워 두십시오. 이것은 공백으로 시작하고 캐리지 리턴으로 끝나는 모든 줄과 일치합니다 (이 경우에는 windows crlf).
  5. 다음 줄 찾기 버튼을 클릭하여 빈 줄만 어떻게 일치하는지 확인하십시오.

1
매크로에서 쉽게 작동하려면 다른 방법 대신이 방법을 사용해야했습니다. 감사합니다.
Mafu Josh

5
? ^ \ s는 r에 \ n $ \를 * : 때문에 여러 빈 줄의 필요도 짧고도 적은 대체 한 번에 대체됩니다
njank을

30
  1. ctrl + h (바로 가기 단축키)를 누릅니다 .
  2. 에서 손쉽게 찾을 수 영역, 유형 ^\R(정확한 빈 줄) 또는 ^\h*\R(만 공백으로 빈 라인).
  3. 영역으로 교체 영역을 비워 두십시오 .
  4. 바꿈 옵션을 확인하십시오 .
  5. 정규식 검색 모드를 선택하십시오 .
  6. 모두 바꾸기 버튼을 클릭하십시오 .

여기에 이미지 설명을 입력하십시오


1
이것은 아무런 문제 나 추가 설정 변경없이 저에게 효과적이었습니다. 감사!
Bonez024

19

다음 스크린 샷과 같이이 기술을 따를 수 있습니다.

  • 무엇을 찾다: ^\r\n
  • 다음으로 교체하십시오. keep this empty
  • 검색 모드 : Regular expression
  • 감싸기 : 선택

여기에 이미지 설명을 입력하십시오

참고 : * nix 파일의 경우\n


17

이것은 나를 위해 일했다 :

  1. ctrl + h(바꾸기 단축키)를 누릅니다.
  2. find what상자에 다음 정규식 중 하나를 쓰십시오 . [\n\r]+$또는^[\n\r]+
  3. 휴가의 Replace with상자를 비워
  4. 에서 Search Mode선택Regex
  5. Replace All

    완료를 클릭하십시오 !

이것은 내 거대한 .csv 파일을 망쳐 놓지 않은 유일한 솔루션입니다. 감사!
veuncent

1
마지막으로 replace :-D
Betlista

14

notepad ++에서 CTRL + H를 누르고 검색 모드에서 "확장 (\ n, \ r, \ t ...)"라디오 버튼을 클릭 한 다음 "찾을 내용"상자에 입력하십시오 : \ r \ n (CR LF의 줄임말) )로 바꾸고 "바꾸기"상자를 비워 두십시오.

마지막으로 모두 교체를 누르십시오.


실제로, 나는 그것을 시도했다, 내 대답에서 설명을 참조하십시오. 당신은 뭔가에 있었다!
Brad

3
그러나 파일이 Unix 줄 끝 검색으로 만 저장된 경우 줄 끝은 Windows (CRLF)라고 가정합니다 \n.
BoltClock

@ 브래드 : () "CR LF의 줄임말"사이에 썼고, codetrek이 \ n을 CR이라고 생각하기를 원하지 않았으므로 편집했습니다.
Bassem

오답, 모든 줄을 한 줄에 넣습니다.
m0skit0

12

글쎄, 정규식이나 상황에 대해 잘 모르겠다 ..

CTRL + A는 TextFX 메뉴-> TextFX 편집-> 빈 줄 삭제를 선택하고 빈 줄을 모두 비올라.

참고 사항-줄이 비어 있으면 공백이 없으면 작동합니다.


12

다음 정규식을 검색 ^(?:[\t ]*(?:\r?\n|\r))+하고 빈 필드로 바꿀 수 있습니다


11

Ctrl + H

찾기-\ r \ r-\ r로 바꿉니다.


이것은 단일 \ r로 double \ r replace를 찾는 의미에서 여분의 줄을 제거하여 저에게 효과적입니다. 감사!!
genpet

이것은 잘 작동했지만 \ r \ r의 모든 인스턴스가 사라지기 전에 문서에서 여러 번 실행해야한다는 것을 알았습니다. 왜 그런지 잘 모르겠습니다.
Hawkwing

7

빈 줄에 탭이나 공백이 있으면 분명히 작동하지 않습니다. HTML 편집기의 결함으로 인해 많은 웹 페이지 (예 : http://www.guardian.co.uk/ )에 이러한 흰색 줄이 포함되어 있습니다.

다음과 같이 정규식을 사용하여 공백을 제거하십시오.

패턴 변경 : [\ t] + $를 아무 것도 설정하지 마십시오.

여기서 [\ t]는 탭 또는 공백과 일치합니다. '+'는 하나 이상의 발생과 일치하며 '$'는 줄의 끝을 나타냅니다.

그런 다음 notepad ++ / textFX를 사용하여 하나 이상의 빈 줄을 제거하십시오. 주어진 맥락에서이 빈 줄이 중요하지 않은지 확인하십시오.


5

여기에 이미지 설명을 입력하십시오

때로는 \ n \ r 등이 작동하지 않습니다. 여기에서 실제로 정규식이 무엇인지 알아 내십시오.

이 트릭의 장점 : 한 번에 여러 파일을 바꾸려면이 방법이 필요합니다. 위는 작동하지 않습니다 ...


5

1) Ctrl + H(또는 Search 🠆 Replace..)를 눌러 Replace 창을 엽니 다.

2) '정규식'을 선택하십시오'Search Mode'

3) '찾을 내용' 유형 ^(\s*)(.*)(\s*)$'바꾸기' 유형\2

  • ^ -시작 문자와 일치
  • (\s*) -공백 문자와 일치
  • (.*) -모든 문자와 일치
  • (\s*) -공백 문자와 일치
  • $ -줄 끝 문자와 일치
  • \2 -두 번째 대괄호와 일치하는 내용을 나타냅니다.

여기에 이미지 설명을 입력하십시오정규식에 대한 자세한 내용은 https://www.rexegg.com/regex-quickstart.html 을 참조하십시오 .


4
  1. 편집 >> 빈 작업 >> 선행 및 후행 공백 자르기 (빈 줄에서 검은 색 탭 및 공백 제거)
  2. Ctrl+ H창을 바꾸고 패턴을 바꾸려면 : ^\r\n없음 (정규 표현식 선택)

참고 : 1 단계는 탭과 공백을 통해 수행 된 코드 의도를 제거합니다.


4

CTRL + A, 위의 제안대로 TextFX 메뉴-> TextFX 편집-> 빈 줄 삭제를 선택하십시오.

그러나 줄에 공백이 있으면 커서를 해당 줄로 이동하고 CTRL + H를 수행하십시오. "찾을 내용 :"초에 공백이 표시되고 "바꾸기"섹션에 공백으로 두십시오. 이제 모든 공백이 제거되고 CTRL + A를 시도하고 TextFX 메뉴-> TextFX 편집-> 빈 줄 삭제를 선택하십시오.


4

/n/r특정 유형의 줄 바꿈을 가정합니다. 빈 줄을 타겟팅하려면 다음을 사용할 수도 있습니다.

^$

이것은 시작과 끝 사이에 아무것도없는 줄입니다. 이것은 더 포괄적 인 것입니다. 동일한 빈 문자열로 교체하십시오.


3

결합 된 답변을 답변으로 보지 않았으므로 ^ \ s + $를 검색하고 {nothing}으로 대체하십시오.

^\s+$ means
  ^ start of line
  \s+ Matches minimum one whitespace character (spaces, tabs, line breaks)
  $ until end of line

여러 라인을 원한다면 당신은 시도 할 수 ^\s+^(\S)및 교체 \1.
jiggunjer


1

빈 줄에서 공백을 제거하는 쉬운 대안 :

  1. TextFX> TextFX 편집> 후행 공백 자르기

빈 줄의 후행 공백을 포함하여 모든 후행 공백이 제거됩니다. 후행 공백이 중요하지 않은지 확인하십시오.


0

위의 표현식과 확장 표현식 중 일부는 저에게 효과가 없었지만 정규 표현식 "$ \ n $"는 효과가 없었습니다.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.