2024-12-22

@user 아래 용어집에 영어 단어와 한글 단어 위치를 바꾸고 싶거든. 정규식으로 알려줄래? 아래의 예에서 1.을 2.로 변경하는 거야.

  1. :: 절대주의
  2. :: absolutism

@assistant 네, 정규식을 사용하여 용어집의 영어 단어와 한글 단어의 위치를 바꾸는 방법을 알려드리겠습니다. 다음과 같은 정규식을 사용하시면 됩니다:

찾기:

(<<[^>]+>>) :: ([^<]+)

바꾸기:

<<\2>> :: \1

이 정규식은:

  • <<[^>]+>>=는 =<<=와 =>> 사이에 있는 모든 문자를 선택합니다. 이는 영어 단어를 의미합니다.
  • =([^<]+)=는 =<=가 나오기 전까지의 모든 문자를 선택합니다. 이는 한글 단어를 의미합니다.
  • \1=는 찾은 두 그룹의 위치를 바꿔서 다시 작성합니다.

이 정규식을 사용하면 1.의 형식을 2.의 형식으로 변경할 수 있습니다. Emacs에서 이 정규식을 사용하려면 M-x replace-regexp 명령을 사용하시면 됩니다.

@user 하나 더 한글 뒤에 -로 구분 한 뒤 설명이 붙거든, 설명하는 부분은 변경하지 않아야 해.

  1. :: 절대주의 - 절대주의란 ... 입니다.
  2. :: absolutism - 절대주의란 ... 입니다.

@assistant 설명 부분을 유지하면서 영어 단어와 한글 단어의 위치를 바꾸려면 다음과 같은 정규식을 사용하시면 됩니다:

찾기:

\(<<[^>]+>>\) :: \([^<]+\)\( - .+\)

바꾸기:

<<\2>> :: \1\3

이 정규식은:

  • <<[^>]+>>=는 =<<=와 =>> 사이에 있는 모든 문자를 선택합니다. 이는 영어 단어를 의미합니다.
  • =([^<]+)=는 =<=가 나오기 전까지의 모든 문자를 선택합니다. 이는 한글 단어를 의미합니다.
  • =( - .+)=는 = - = 뒤에 오는 모든 문자를 선택합니다. 이는 설명 부분을 의미합니다.
  • \1\3=는 찾은 두 그룹의 위치를 바꾸고, 설명 부분은 그대로 유지합니다.

이 정규식을 사용하면 설명 부분을 변경하지 않고 영어 단어와 한글 단어의 위치를 바꿀 수 있습니다.

@user