메모장 ++에서 줄을 바꾸려면 어떻게해야합니까?


12

메모장 ++에서 한 줄을 뒤집을 수 있습니까?

예:

Hello world

로 변경됩니다

dlrow olleH

이러한 기능을위한 플러그인을 설치해야합니까?

업데이트 : 클립 보드를 원래 상태로 유지하고 싶습니다. 따라서 [복사]-[외부 변환]-[붙여 넣기]는 적합하지 않습니다.

또한 연결이 끊긴 데스크톱 환경에 머무르고 싶습니다. 따라서 온라인 서비스 솔루션이 적합하지 않습니다.

답변:


6

문자열의 시작 부분을 특수 문자로 표시 한 후 반복 검색을 수행하고 문자열을 바꾸려면 바꿀 수 있습니다 (예에서 퍼센트 부호 % 사용).

검색: (%)(.*)(.)

바꾸다: \3\1\2

검색 및 바꾸기에서 "정규 표현식"을 활성화하십시오.

스트링이 반전 될 때까지 작업을 반복하십시오.


2
긴 줄이 지칠 수도 있지만 NPP의 환경에 여전히 속하기 때문에 좋은 솔루션입니다.
Ron Klein

3

업데이트 : 파이썬 -3 "클립 보드 텍스트 반전"스크립트를 추가했습니다.
이 Python-3 스크립트는 유니 코드 텍스트를 제공합니다. 즉. 모든 텍스트 ...

# original # Ĥĕłłō ŵōŗłđ in Unicode  
# reversed # edocinU ni đłŗōŵ ōłłĕĤ  

아직 통합 솔루션이 제시되지 않았으므로 유닉스 도구 해결 방법을 언급하겠습니다.

소스 (아래)에 언급 된 유틸리티를 다운로드하여 PATH'd 폴더에 넣습니다.
코드 (아래)를 .cmd 파일에 넣고 원하는대로 호출하십시오. (물론 PATH의 폴더에 있어야합니다).
.cmd에 대한 Windows 바로 가기를 만들고 (StartMenu의 아무 곳에 나 놓고 최소화 된 상태로 실행) ... 바로 가기 키를 지정하십시오.

그러면 선택한 텍스트를 클립 보드에 복사하고 단축키를 누를 수 있습니다 ... 완료! .. 반전 된 텍스트가 선택한 텍스트를 대체합니다.

원한다면 NotePad ++ 매크로를 설정하여 전체 줄을 선택하고 복사 할 수 있습니다. (텍스트 끝에 줄 바꿈 문자를 적어 두십시오.

또한 소스 노트에 언급 된 바와 같이. 이것은 1 바이트 문자 세트에서 작동했습니다.

sed.exe유니 코드를 처리 할 수 ​​있지만 아직 그 중 하나를 해결하지 못했습니다 ...이 작업을 수행하는 방법을 알고 있다면 여기 또는 아마도 특정 qustion에 대한 내 게시물 에이 정보를 게시하십시오. : can-gnu-sed-windows-handle-unicode에 대해

이것은 sed.exe버전입니다.

@echo off
  ::==============================================::
  :: FUNCTION: Reverse the text in the clipboard. ::
  ::    8-bit characters only (ANSI).             ::
  :: It removes all \r and \n characters, because ::
  :: because sed.exe adds a trailing line-feed    ::
  :: Four `NIX utilities are used.                ::
  ::    2 gclip.exe  (GNU)                        ::
  ::    1 pclip.exe  (GNU)                        ::
  ::    3 gsed.exe   (GNU)                        ::
  ::    4 tr.exe (is `NIX, but maybe not GNU)     ::
  ::==============================================:: 
  >   "%temp%\%n0.sed" echo /\n/!G
  >>  "%temp%\%n0.sed" echo s/\(.\)\(.*\n\)/^&\2\1/
  >>  "%temp%\%n0.sed" echo //D
  >>  "%temp%\%n0.sed" echo s/.//
  pclip.exe | sed.exe -f "%temp%\%n0.sed" | tr.exe -d "\r\n" | gclip.exe  
  del "%temp%\%n0.sed"
goto :eof  

Python-3버전 은 다음과 같습니다 .

##==============================================##
## FUNCTION: Reverse the text in the clipboard. ##
##           The text is handled as unicode.    ##
## Using Python-3.1.2                           ##
##  with Python-Win32-extensions for Python-3.1 ##
##==============================================##
import win32clipboard as w
w.OpenClipboard() 
## CF_UNICODETEXT == 13
s=w.GetClipboardData(13)
w.SetClipboardData(13,s[::-1]) 
w.CloseClipboard() 

Windows에서 Python 2.5 와도 잘 작동합니다. 단!
Dennis

클립 보드의 상태가 변경됩니다. 나는 이것을 피하고 싶다. 그러나 그것이 작동한다면, 나는 그것을 받아 들일 수 있습니다.
Ron Klein

2

이를 수행 할 필요가없는 경우 종종 이 온라인 도구 에 행을 복사 하여 반전을 수행 할 수 있습니다.


좋은 생각이지만 요점은 Notepad ++ 환경에서 계속 작업하고 외부 리소스 (브라우저)로 이동하지 않는 것입니다.
Ron Klein

안타깝게도 도구가 오프라인 상태입니다
Antonio

2

나는 이것이 다른 도구를 사용한다는 것을 알고 있지만 Excel에서 텍스트를 뒤집은 다음 다시 복사 할 수 있습니다. 스프레드 시트를 작성하고이 매크로를 추가하십시오.

Sub ReverseText()
    Cells(Selection.Row, Selection.Column + 1) = StrReverse(Selection.Value)
End Sub

이 기능을 정기적으로 사용하려면 쉽게 액세스 할 수 있도록 도구 모음의 버튼에 매크로를 할당하십시오. 셀에 텍스트를 복사하십시오. 셀이 선택되었는지 확인하고 매크로를 실행하십시오. 생성 된 텍스트를 메모장 ++로 다시 복사하십시오.

놀랍게도 Notepad ++ 또는 같은 플러그인을 통해이 간단한 기능을 사용할 수 없습니다 TextFX.


1

메모장 ++의 BinHex 플러그인 버전 2.0에는 문자열 역 기능이 구현되어 있습니다.

뒤집어 야 할 문자열을 표시하고 Ctrl+를 누르십시오 R.


0

문자열이 10 자 미만인 경우 gor 아이디어의 확장 :
이 매크로를 만드십시오.
N ++에서 원하는 영역을 강조 표시하십시오.

검색:

(.?)(.?)(.?)(.?)(.?)(.?)(.?)(.?)(.?)

바꾸다:

\9\8\7\6\5\4\3\2\1

선택에서 교체 : 확인

N ++은 10 개의 그룹 만 지원하므로 모든 것이 가능하지만 적어도 한 번에 10 개의 문자를 수행합니다.

주제 밖에서 IE의 정규식 엔진은 이러한 종류의 정규식과 관련하여 허용되는 것과 다르므로 반복없이 IE에서 가능할 수 있습니다.


0
  1. 반전시킬 텍스트를 선택하십시오.
  2. 바꾸기 선택 창에서 정규식을 선택하고 \ n \ 1을 사용하여 모두 (.)로 바꾸기로 정규식을 선택하여 여러 줄로 나눕니다.
  3. 텍스트를 다시 선택하십시오 (어떤 이유로 2 단계 후에 마지막 문자가 선택에서 제외됨).
  4. 메모장 ++에서 줄 순서 반전에 대한 대답을 사용하여 을 바꾸십시오.
  5. 바꾸기 선택 창에서 확장을 선택한 상태에서 확장을 선택하여 모두 \ n을 빈 문자열로 바꾸어 줄을 다시 결합하십시오.
  6. 불필요한 개행을 제거해야 할 수도 있습니다.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.