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


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.