안녕하세요 zkalf 입니다.
이번에는 정규표현식으로 보관함에서 아이템을 검색하는 법에 대해 소개하겠습니다.
프로그래밍 용어라서 낯설거나 거부감이 드실 수 있지만
최대한 쉽게 여러가지 예시를 들어가며 설명해드릴테니 한번 읽어보시고
정 이해가 어렵다면 몇가지 예시만 기억해가세요.
매우 유용하게 쓰일것입니다.
목차
2.2.2. 임의의 반복횟수를 뜻하는 * (shift+8, 별표)
2.2.4. 정해진 반복 횟수를 뜻하는 {} (중괄호)
정규표현식이란 프로그래밍 용어로 텍스트의 패턴을 표현하는 형식입니다.
보관함의 검색창 좌측 'information' 버튼에 커서를 대면 정규 표현식을 지원한다고 쓰여있습니다.
우리는 정규표현식으로 텍스트의 패턴을 표현해서 우리가 원하는 조건의 아이템을 강조 표시할 수 있습니다.
간단한 예로 맵작업을 할때 이렇게 검색어를 입력해서 우리가 못도는 맵모드를 걸러낼 수 있죠.
이것 말고도 더 복잡한 정규 표현식을 사용해서 원하는 무리규모 이상의 맵을 찾아낸다거나
시즌 초 액트를 밀때 원하는 링크, 소켓 아이템을 찾아낸다거나 할 수 있습니다.
하지만 모든 정규 표현식에 대해서 알 필요는 없습니다.
우리는 poe에 도움이 되는 유용한 몇가지만 알면 됩니다.
가장 먼저 알아볼 연산자는 | 로 (shift + ₩) 가장 많이 쓰는 연산자이기도 합니다.
의미는 or 로 또는 이라는 뜻이며 | 좌우의 옵션중 하나에 해당되면 강조 표시를 해줍니다.
예를 들어 재생|흡수 라고 검색하면 재생 불가 맵이나 흡수 불가 맵이 모두 표시가 되죠.
여러번 반복을 할 수 도있습니다. 재생|흡수|반사 라고 검색하면
재생 불가, 흡수 불가, 원소or물리 반사 맵을 모두 표시해줍니다.
and 를 뜻하는 연산자는 "" (큰따옴표) 입니다.
각각 단어의 앞 뒤를 큰따옴표로 감싸준다면 두 가지 모두 해당하는 옵션이 표시가됩니다.
예를 들어 "미확인""타락" 이라고 검색하면 미확인이면서 타락된 맵이 표시가 되죠.
not 을 뜻하는 연산자는 ! (느낌표) 입니다.
거르고 싶은 단어의 맨 앞에 느낌표를 붙여주면 해당 옵션은 제외하게됩니다.
예를 들어 !미확인 이라고 검색하면 미확인 맵은 제외하고 감정된 맵만을 검색합니다.
이제 위의 3가지 경우를 합쳐서 응용해보겠습니다.
우리는 재생불가맵이나 흡수불가맵이 아니면서 타락된 맵을 고르고 싶습니다.
그러면 "!재생""!흡수""타락" 으로 검색을 하면 됩니다.
() 는 소괄호 안의 문자를 그룹화 해줍니다.
동일한 연산자가 필요한 단어를 그룹으로 묶어서 검색어의 길이를 줄어주죠.
2.1.4. 응용 에서 쓰인 검색어 "!재생""!흡수""타락" 를 다음과 같이 바꿀 수도 있습니다.
"!(재생|흡수)""타락"
2.1.4. 와 동일한 결과가 나오네요.
[] 는 대괄호 안의 모든 문자 하나하나에 or 연산자 | 를 적용합니다.
예를들어 검색어 재|생|불|가 는 [재생불가] 와 같으며 2|3|4|5|6 은 [23456] 과 같습니다.
숫자의 경우에는 - (마이너스) 를 사용해서 더 간단히 할 수 있는데요.
[23456] 은 2에서 6까지 연속된 숫자가 대괄호 내부에 있으므로 [2-6] 으로 표현됩니다.
. (마침표) 는 임의의 문자 1개 또는 띄어쓰기(스페이스) 를 표현합니다.
예를들어 검색창에 12.45 를 입력하면
'12345', '12 45', 12845' 모두 강조 표시가 됩니다.
2.1.1. 의 or 연산자 | 와 응용하면 야수를 뺄때 요긴하게 쓰입니다.
야수 필터에 의.키|린.거 라고 검색하면 '크라칸의 키메랄' 과 '페누무스 역병 걸린 거미류' 모두 표시가 됩니다.
2.2.2. 임의의 반복횟수를 뜻하는 * (shift+8, 별표)
* (shift+8, 별표) 는 앞에나온 문자가 0~무한번 반복되었다는 것을 뜻합니다.
예를 들어 d* 이라면 d 가 없을수도 또는 1번있을수도 3~4번 있을수도 있죠.
보통 *는 .와 조합해서 .*로 많이쓰이는데
임의의 문자 또는 띄어쓰기가 0~무한번 반복되었으므로 모든 문자열을 뜻합니다.
검색창에 .*을 입력하면 이렇게 모든 항목에 강조표시가 되어있죠.
일반적으로는 .* 앞뒤에 단어를 붙여서 사용합니다.
물리.*반사 라고 검색하면 물리 피해의 18%를 반사 옵션이 검색됩니다.
밑줄 친 부분이 전부 .*로 표현이 되는겁니다.
즉 우리는 첫단어와 마지막단어를 알면 중간에 텍스트가 생각나지않아도 .*로 대체해서 검색이 가능합니다.
. (마침표) 가 문자를 대표했다면 임의의 숫자는 ₩d 가 대체합니다.
검색창에 ₩d 를 입력하면 0~9까지의 10개의 숫자가 아무거나 포함되면 모두 강조 표시가 됩니다.
2.2.4. 정해진 반복 횟수를 뜻하는 {} (중괄호)
어떤 문자든 숫자든 반복횟수를 정해줄때는 {3} 이렇게 중괄호 안에 반복횟수를 입력합니다.
그리고 앞에는 반복을 원하는 문자 또는 숫자를 입력하죠.
예를 들어 3{3} 은 3이 3번 반복된 숫자 즉 '333' 을 뜻합니다.
2.2.3. 의 ₩d 와 조합해서 ₩d{3} 으로 검색한다면 100~999 즉 임의의 3자리 수를 의미하죠.
앞에 수량.* 을 붙여서 수량.*₩d{3} 이라고 검색한다면 수량이 100이 넘는 지도를 검색할 수 있습니다.
참고로 중괄호 안에는 쉼표를 넣어서 반복횟수의 범위를 지정할 수 도 있는데요.
{2,3} 은 반복횟수가 2~3 회라는 뜻이고 {,3} 은 0~3회, {3,} 은 3회 이상 이라는 뜻 입니다.
위의 지도에 'Alt' 를 눌러보면 지도에 8가지 속성이 부여된 것을 볼 수 있습니다.
지도에는 속성부여 하나당 무리규모가 4~6% 오르는데 8모드맵은 최소한 무리규모가 32% 이상으로
무리규모와 수량을 크게 올렸을때 이득을 보는 컨텐츠인 '탐험', '수확' 등은 이런 맵만 돌아서 수익을 극대화 하는편입니다.
따라서 우리는 무리규모 32% 이상인 맵을 정규표현식으로 검색을 해보겠습니다.
우선 무리규모 32% 이상이라 하면 32~39% 또는 40~99% 또는 100% 이상을 모두 뜻합니다.
이를 정규표현식으로 바꾸면 32~39 는 3[2-9], 40~99 는 [4-9][0-9], 100 이상은 1[0-9][0-9] 입니다.
그런데 2.2.3. 에서 [0-9] 는 ₩d 로 대체가 가능합니다. 따라서 소괄호로 각각 묶어주면
(3[2-9]|[4-9]₩d|1₩d₩d) 로 표현합니다.
이제 2.2.4. 에서 배운 반복횟수를 응용하고 앞에 무리 규모라는 표현을 달아주면
규모.*(3[2-9]|[4-9]₩d|₩d{3}) 로 무리 규모 32% 이상인 8모드맵을 검색하는 정규표현식이 완성됩니다.
물론 지도의 속성부여 하나당 무리 규모가 6%가 붙을 수도 있으니
6모드로도 무리규모 36% 인 맵이 이론상 존재하지만
파밍에서 중요한건 8모드냐 아니냐가 아니라 절대적인 수량과 무리규모 수치니까 상관없습니다.
많은분들이 리그 초 액트를밀때 1장 '타클레이' 에게 ~~색 ~~색 3링크 아이템을 구매하라는
스타터 가이드를 접하셨을 겁니다. 이때 홈색과 링크 수도 정규 표현식으로 검색이 가능합니다.
위처럼 빨간 홈은 R, 파란 홈은 B 그리고 초록홈은 G로 표현하며
각각의 링크는 - (마이너스) 로 표시합니다.
R-B-B 로 검색하면 1빨 2파인 3링크 아이템이 검색되네요.
만약 1빨 1파 이기만 한다면 R-B-. 로도 검색 할 수 있겠네요.
? 는 물음표 앞의 문자가 있거나 없거나 모두 표시를 합니다.
예를 들어 23? 으로 검색하면 2뒤에 3이 있거나 없는 경우 를 모두 표시하므로 2 와 23 모두 강조 됩니다.
이를 응용해서 3소켓 이상인 템을 검색한다면 ([RGBW].?){3,} 로 표현할 수 있습니다.
[RGBW] 는 어떤 홈색깔이든 상관없다는 뜻이고 .?는 링크가 있든 없든을 뜻하며
{3,} 은 최소한 홈이 3개이상 이라는 뜻입니다.
마찬가지로 3링크 이상인 템을 검색한다면 ([RGBW]-?){3,} 로 표현합니다.
링크가 있어야 하니까 임의의 문자의 표현 .를 -로 바꾼것입니다.
? 는 자주 쓰지는 않지만 시즌 초 홈에 맞는 장비를 살때 유용합니다.
여기까지 poe에서 검색할 때 유용한 최소한의 정규표현식에 대해 알아봤습니다.
내용이 많이 길지만 한번에 전부 알려고 할 필요는 없습니다.
그때그때 필요한 부분을 찾아보고 개인용 메모장 등을 만드셔서
유용하게 사용하셨으면 좋겠습니다.
이상의 내용을 다 이해하셨다면
[POE 팁] 정규표현식 생성 사이트 Path of Exile Regex
안녕하세요 zkalf 입니다. 지난번에 정규표현식에 대한 원리에 대해 알아봤다면 이번에는 정규표현식을 쉽게 생성할수 있는 사이트인 'Path of Exile Regex' 에 대해 소개하려고 합니다. 정규표현식이
zkalf.tistory.com
이 글을 읽어보시고 편하게 정규표현식을 생성하세요.
'poe 꿀팁' 카테고리의 다른 글
PoE 를 시작하는 뉴비에게 전하는 조언 (2) | 2023.07.05 |
---|---|
PoE 팁 정규표현식 생성 사이트 Path of Exile Regex (0) | 2023.05.17 |
PoE 3.21 성유 추출기용 인챈트 목록 (0) | 2023.05.08 |
PoE 팁 필터 블레이드 시작하기 (+강철 연모양 방패) (0) | 2023.05.05 |
PoE 팁 거래소 검색의 모든 것 (0) | 2023.04.28 |
댓글