ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 탐색기에서 정규식이 지원되는 파일명 일괄 변경 프로그램 - Rename Regular Expression
    개발/지름 2007. 11. 10. 06:21
    반응형

    탐색기에서 정규식이 지원되는 파일명 일괄 변경 프로그램 - Rename Regular Expression

    탐색기에 Add-On 형태로 붙어 버리는 프로그램.
    공개된 무료 소프트웨어이며 다운로드는 아래의 링크에서 받을 수 있다.

    다운로드받기


    사용법

    일반적인 파일명 교체는 다음과 같은 방법으로 할 수 있다.

    1. 파일명을 바꾸고자 하는 파일들을 선택한다.
    2. 다음 마우스 오른쪽 버튼을 누르면 다음과 같은 메뉴가 표시된다.

    Rename RegEx.. 메뉴를


    3. 위의 화면에서 Renmae RegEx... 메뉴를 선택하면 아래와 같이 파일명을 교체할 수 있는 UI가 표시된다.


    4. 첫번째로 일반적인 파일명 변경을 원할 때는 위와 같이 특정한 단어를 Source Expression 쪽에 넣고 Target Expression에 원하는 단어를 넣으면 된다. 위의 경우는 아래에 아무것도 넣지 않았기 때문에 New name 쪽에서 ebook이란 단어만 제거 되어 있다.


    5. 위의 화면은 정규식을 이용해서 파일명은 변경하는 화면이다. 아래의 Current Name의 파일명중 (ebook - ***)의 형식의 파일명을 삭제하기 위해서는 위와 같이 입력해주면 된다.


    6. 마지막으로 순번을 정해서 파일명을 변경시켜 주는 화면이다. 위의 체크박스 중 Repalce... 로 시작되는 항목을 체크한 후 Target Expression쪽에 위와 같이 입력해 주면 오름차순으로 숫자가 나열된다. 앞에 0을 붙여서 시작하고 싶은 경우는 위와 같이 ##으로 해주면 된다.


    정규식이라고 처음 들어보시는 분도 많이 계시겠지만 일반적인 파일명을 변경하고 싶을 때는 몇가지의 규칙만 알아두면 상당한 시간 노가다를 피할 수 있으며 또한 여기에서 쓰이는 정규식은 택스트 파일 편집기 등에서도 널리 쓰이는 방식이므로 한번 알아두면 큰 도움이 된다.

    아래는 참고로 프로그램소개 페이지의 내용 및 간단한 정규식 설명

    If you need to rename a number of files in complicated ways, RenameRegEx can do it.

    RenameRegEx adds a shortcut to the Windows Explorer context menu. When you select two or more files and right-click on them, you can select the Rename RegEx… command to display the RenameRegEx window. There you can enter the pattern to match and the replacement pattern, using the full power of regular expressions.

    You can use the right-arrows after each expression field to enter any of the special characters above. This is usually easier than memorizing the sometimes arcane syntax of regular expressions.

    The dropdown combo boxes store their previous values so you can easily reuse previous expressions.

    The Case-sensitive matching check box enables, of course, case-sensitive searches, which ensures that the text will only match if the case matches.

    If you select the Replace all matches check box, every match will be replaced with the target expression. If the check box is cleared, only the first match will be replaced.

    If the Replace "#" with… check box is selected, any occurrence of the # character in the target expression will be replaced by a number, starting with the number you enter.


    Regular Expressions

    This documentation will be fairly brief and it assumes you have some knowledge of regular expressions. If you want to learn more, you can read about them on the Internet.

    You use a regular expression to match a specific pattern of text, such as all words that begin with “b” or all text starting with 0 and ending with a period.

    Regular Expression Syntax

    . Matches any single character.
    [ ] Indicates a character class. Matches any character inside the brackets (for example, [abc] matches "a", "b", and "c").
    ^ If this metacharacter occurs at the start of a character class, it negates the character class. A negated character class matches any character except those inside the brackets (for example, [^abc] matches all characters except "a", "b", and "c").

    If ^ is at the beginning of the regular expression, it matches the beginning of the input (for example, ^[abc] will only match input that begins with "a", "b", or "c").
    - In a character class, indicates a range of characters (for example, [0-9] matches any of the digits "0" through "9").
    ? Indicates that the preceding expression is optional: it matches once or not at all (for example, [0-9][0-9]? matches "2" and "12").
    + Indicates that the preceding expression matches one or more times (for example, [0-9]+ matches "1", "13", "666", and so on).
    * Indicates that the preceding expression matches zero or more times.
    ??, +?, *? Non-greedy versions of ?, +, and *. These match as little as possible, unlike the greedy versions which match as much as possible. Example: given the input "", <.*?> matches "" while <.*> matches "".
    ( ) Grouping operator. Example: (\d+,)*\d+ matches a list of numbers separated by commas (such as "1" or "1,23,456").
    { } Indicates a match group. The actual text in the input that matches the expression inside the braces can be retrieved through the CAtlREMatchContext object.
    \ Escape character: interpret the next character literally (for example, [0-9]+ matches one or more digits, but [0-9]\+ matches a digit followed by a plus character). Also used for abbreviations (such as \a for any alphanumeric character; see table below).

    If \ is followed by a number n, it matches the nth match group (starting from 0). Example: <{.*?}>.*? matches
    $ At the end of a regular expression, this character matches the end of the input. Example: [0-9]$ matches a digit at the end of the input.
    | Alternation operator: separates two expressions, exactly one of which matches (for example, T|the matches "The" or "the").
    ! Negation operator: the expression following ! does not match the input. Example: a!b matches "a" not followed by "b".

    Abbreviations

    You can also use abbreviations, such as \d instead of [0-9].

    \a Any alphanumeric character.
    \b White space (blank).
    \c Any alphabetic character.
    \d Any decimal digit.
    \h Any hexadecimal digit.
    \n Newline.
    \q A quoted string.
    \w A simple word.
    \z An integer.

    Tips and Tricks

    If you have a set of numbered files that you want to renumber, it’s possible that the filenames might “collide” during renaming. For example:

    Current name New name
    test1.txt test1.txt
    test11.txt test12.txt
    test2.txt test3.txt

    If the source expression is test.+ and the target expression is test#.txt, RenameRegEx will display an error when it tries to rename test11.txt to test2.txt because test2.txt already exists.

    The workaround is to modify the rest of the filename too, not just the numbers. In this example, you can change the target expression to test_#.txt. (Note the new underscore.)


    Requirements

    RenameRegEx runs on Microsoft® Windows® Vista, XP Home and Professional, 2003, and 2000. (Although it may work on other versions of Windows, it’s not guaranteed.)

    인터넷 서핑중 긁어왔다.
    저작권에 걸리지 않으려냐...(긁적 ;;)
    이런거 하나쯤 할 줄 알면 컴 관리가 편하다.(특히 드라마 볼 때)
    반응형

    댓글

Designed by Tistory.