ReNamer 정규 표현식을 사용하여 작성자 이름을 사용하는 폴더 이름을 바꾸려고 합니다. 다음과 같이 설정되어 있으므로 (쉼표 빼기) LastName, FirstName
로 변경해야 합니다 .FirstName LastName
ReNamer 정규식 사용은 한 줄에서는 Expression으로 설정되고 두 번째 줄에서는 바꾸기로 설정됩니다. 이 경우에는 입력 다음 출력이라고 가정합니다. 여기에서 여러 가지 솔루션을 시도했지만 전혀 작동하지 않았습니다. 나는 정규식의 극단적인 기본 사항을 거의 이해하지 못하므로 모든 도움을 주시면 감사하겠습니다.
파일 및 폴더 이름 바꾸기 프로그램인 ReNamer에 따르면 정규식은 내가 필요한 작업을 수행할 수 있는 여러 선택 사항 중 유일한 옵션입니다. 다른 사이트에서 누군가의 제안을 시도했습니다. 표현식 줄에 를 입력한 ([^,]*), (.)
다음 바꾸기 줄에 를 입력했습니다 \2 \1
. 결과 Duncan, Dave
는 로 바뀌었습니다 2 1
.
답변1
ReNamer는 모르지만 정규식 논리를 따르면 작동합니다.
From: "^([^,]*), (.*)"
To : "\2 \1"
설명:
- 초기는
^
'표현의 시작'을 의미합니다. - 대괄호
()
는 기억해야 할 표현식의 일부를 나타내며 및 대체에 사용할 수\1
있습니다\2
. [^,]*
쉼표를 제외한 모든 문자와 일치합니다(^
이 문맥에서 는 '일치하지 않음'을 의미함)..*
나머지 모든 문자와 일치- 첫 번째 괄호 안의 표현은 귀하
LastName
이고 두 번째 괄호 안의 표현은 귀하입니다.FirstName
답변2
다음을 수행해야 합니다.
:%s/\(^.*\,*\).*\(\,.*$\)/\2 \1/g
\
일부 구두점 문자의 경우 VI/VIM 앞에 추가해야 한다는 점을 기억하십시오 .
산출:
, 이름 성