[task] | distill [title] | 정규식 언어 [category] | Guides [rephrased] | # 정규식 언어 정규식은 입력 텍스트에서 특정 패턴을 찾는 문법입니다. ## 문자 클래스 (Character Classes) 문자 집합 중 하나를 찾습니다. 기본적으로 대/소문자를 구분합니다. | 구문 | 설명 | 예시 패턴 | 일치 예시 | | :--- | :--- | :--- | :--- | | `[`*char_group*`]` | *char_group* 내 단일 문자와 일치 | `[ae]` | `"gray"`의 `a`, `"lane"`의 `a`, `e` | | `[^`*char_group*`]` | *char_group [original] | # 학습 과정 소개 정규식은 입력 텍스트에서 찾으려는 패턴을 의미합니다. 본 과정에서는 정규식을 정의할 때 사용할 수 있는 특정 범주의 문자, 연산자 및 구분을 안내합니다. # 문자 클래스 문자 클래스(Character Classes)는 문자 집합 중 하나를 찾습니다. | 문자 클래스 | 설명 | 무늬 | 일치 항목 | | -- | -- | -- | -- | | `[`*character_group*`]` | *character_group* 내의 모든 단일 문자와 일치하는 항목을 찾습니다. 기본적으로 대/소문자를 구분합니다. | [chunk_id] | Guides:1043:0
[task] | diverse_qa [title] | 정규식 언어 [category] | Guides [rephrased] | 질문: 정규식은 어떤 의미를 가지나요? 답변: 정규식은 입력 텍스트에서 찾으려는 패턴을 의미합니다. 질문: 문자 클래스(Character Classes)의 정의는 무엇인가요? 답변: 문자 클래스는 문자 집합 중 하나를 찾는 기능입니다. 질문: `[ae]` 패턴이 `"gray"`와 `"lane"`에서 일치하는 항목은 무엇인가요? 답변: `"gray"`의 `"a"`와 `"lane"`의 `"a"`, `"e"`입니다. 질문: `[^aei]` 패턴의 동작 방식을 설명하시오. 답변: `character_group`인 `aei` 내의 모든 [original] | # 학습 과정 소개 정규식은 입력 텍스트에서 찾으려는 패턴을 의미합니다. 본 과정에서는 정규식을 정의할 때 사용할 수 있는 특정 범주의 문자, 연산자 및 구분을 안내합니다. # 문자 클래스 문자 클래스(Character Classes)는 문자 집합 중 하나를 찾습니다. | 문자 클래스 | 설명 | 무늬 | 일치 항목 | | -- | -- | -- | -- | | `[`*character_group*`]` | *character_group* 내의 모든 단일 문자와 일치하는 항목을 찾습니다. 기본적으로 대/소문자를 구분합니다. | [chunk_id] | Guides:1043:0
[task] | extract_knowledge [title] | 정규식 [category] | Guides [rephrased] | # 정규식 옵션 (Regex Options) ## 1. 개념 설명 mLua의 정규식 엔진은 `RegexOption`을 통해 문자열 처리 방식을 변경할 수 있습니다. 주요 옵션으로 **Multiline**과 **Singleline**이 있으며, 이들은 각각 줄 바꿈 문자(`\n`)에 대한 정규식의 동작 방식을 결정합니다. * **Multiline**: `^`와 `$` 앵커가 전체 입력 문자열의 시작/끝이 아닌, 각 줄의 시작/끝과 매칭되도록 합니다. 각 줄은 `\n`으로 구분됩니다. * **Singleline**: 입력 [original] | 여러 줄로 구성된 입력 문자열을 처리할 수 있습니다. 원래 `^`와 `$`는 전체 입력 문자열의 시작과 끝 부분을 의미합니다. 하지만 `Multiline` 옵션을 사용하면 `^`와 `$`가 전체 입력 문자열이 아니라 각 줄의 시작과 끝 부분과 매치하게 됩니다. 각 줄은 줄 바꿈 문자 `\n`으로 구분합니다. ```lua -- Multiline 옵션 사용하지 않음 local pattern = "^(?<Name>\\w+)\\s(?<Number>\\d+)$" local input = "Joe 164\nSam 208\nAllison 21 [chunk_id] | Guides:1041:6
[task] | wikipedia [title] | 한벌옷 만들기 [category] | Guides [rephrased] | # 한벌옷 만들기 본 문서는 메이플스토리 월드의 아바타 아이템 중 ‘한벌옷’을 제작하는 방법을 안내합니다. 한벌옷은 상의와 동일한 구조를 가지며, 상하의가 연결된 형태의 모든 의상 작업을 지원합니다. 아이템 제작에 앞서 아바타 시스템의 기본 개념을 이해하는 것이 필수이므로, ‘아바타 아이템 제작의 기본 개념’ 문서를 먼저 참고하시기 바랍니다. ## 사전 준비 한벌옷 아이템을 제작하려면 Adobe Photoshop 소프트웨어가 필요합니다. 해당 프로그램이 설치된 환경에서 아래 첨부 파일인 `Avatar_Longcoat.psd`를 [original] | # 학습 과정 소개 한벌옷의 제작 방법을 알아봅시다. 한벌옷은 상의와 같은 구조로 구성되어 있으며 상하가 연결된 모든 의상 작업이 가능합니다. [아바타 아이템 제작의 기본 개념](docs/?postId=588)을 참고해 아바타의 기본 개념을 먼저 숙지하길 바랍니다. # 사전 준비 아이템 제작을 위해선 Adobe Photoshop이 필요합니다. 해당 소프트웨어를 설치한 후 아래 파일을 받아 엽니다. $$attachFile {"name":"Avatar_Longcoat.psd","url":"https://mod-file.dn.ne [chunk_id] | Guides:1042:0
[task] | distill [title] | 정규식 언어 [category] | Guides [rephrased] | # 문자 이스케이프 (Character Escapes) 정규식에서 백슬래시(`\`) 뒤에 오는 문자가 특수 문자나 리터럴로 해석됨을 지정합니다. | 이스케이프 | 설명 | 패턴 예시 | 일치 예시 | | :--- | :--- | :--- | :--- | | `\t` | 탭 문자 (`\u0009`) | `(\\w+)\t` | `"item1\titem2\t"` 중 `"item1\t"`, `"item2\t"` | | `\r` | 캐리지 리턴 (`\u000D`). `\n`과 다름 | `\r\n(\\w+)` | `"\r\nThese ar [original] | 문자 이스케이프(Character Escapes)는 정규식의 백슬래시 문자(\\) 뒤에 오는 문자가 아래 표와 같이 특수 문자나 리터럴로 해석되어야 함을 뜻합니다. | 이스케이프된 문자 | 설명 | 무늬 | 일치 항목 | | -- | -- | -- | -- | | `\t` | 탭 문자인 \u0009를 찾습니다. | `(\\w+)\t` | `"item1\titem2\t"`의 `"item1\t"`, `"item2\t"` | | `\r` | 캐리지 리턴 문자인 \u000D를 찾습니다. (`\r`은 줄 바꿈 문자인 `\n`과 다릅니다.) [chunk_id] | Guides:1043:1
[task] | knowledge_list [title] | 정규식 언어 [category] | Guides [rephrased] | 문서에 포함된 앵커(Anchors) 및 원자적 어설션(atomic zero-width assertions)에 대한 핵심 사실은 다음과 같습니다. 1. 앵커(Anchors) 또는 너비가 0인 원자적 어설션(atomic zero-width assertions)은 문자열에서 일치 항목을 찾는 위치를 지정하며, 정규식 엔진이 문자를 사용하지 않고 지정된 위치에서만 일치 항목을 검색하게 합니다. 2. `^` 앵커는 문자열의 시작 부분에서 일치 항목을 찾으며, 문자열이 여러 줄이라면 줄의 시작 부분에서도 일치 항목을 찾습니다. 3. `$` [original] | 앵커(Anchors) 또는 너비가 0인 원자적 어설션(atomic zero-width assertions)은 문자열에서 일치 항목을 찾는 위치를 지정합니다. 앵커를 사용하면 정규식 엔진은 문자열을 통과하거나 문자를 사용하지 않고 지정된 위치에서만 일치 항목을 검색합니다. 예를 들어 `^` 기호는 줄이나 문자열의 시작 부분에서 일치 항목을 찾도록 합니다. `^http:`는 줄의 시작 부분에서만 "http:"를 찾습니다. | 앵커 | 설명 | 무늬 | 일치 항목 | | -- | -- | -- | -- | | `^` | 문자열의 시작 부 [chunk_id] | Guides:1043:2
[task] | distill [title] | 정규식 언어 [category] | Guides [rephrased] | **앵커 (Anchors)** 너비가 0인 원자적 어설션으로, 문자를 소비하지 않고 일치 위치만 지정합니다. | 앵커 | 설명 | 패턴 예시 | 일치 결과 예시 | | :--- | :--- | :--- | :--- | | `^` | 문자열 또는 줄의 시작 | `^\d{3}` | `"901-333-"`의 `"901"` | | `$` | 문자열 또는 줄의 끝 (또는 `\n` 앞) | `-\d{3}$` | `"-901-333"`의 `"-333"` | | `\A` | 문자열의 시작 (다중 줄 미지원) | `\A\d{3}` | `"901- [original] | 앵커(Anchors) 또는 너비가 0인 원자적 어설션(atomic zero-width assertions)은 문자열에서 일치 항목을 찾는 위치를 지정합니다. 앵커를 사용하면 정규식 엔진은 문자열을 통과하거나 문자를 사용하지 않고 지정된 위치에서만 일치 항목을 검색합니다. 예를 들어 `^` 기호는 줄이나 문자열의 시작 부분에서 일치 항목을 찾도록 합니다. `^http:`는 줄의 시작 부분에서만 "http:"를 찾습니다. | 앵커 | 설명 | 무늬 | 일치 항목 | | -- | -- | -- | -- | | `^` | 문자열의 시작 부 [chunk_id] | Guides:1043:2
[task] | diverse_qa [title] | 한벌옷 만들기 [category] | Guides [rephrased] | 질문: 이 문서에서 제작하는 아이템의 최종 형태는 무엇인가요? 답변: 기본 우주복을 바탕으로 무늬를 지우고 귀여운 민소매 한벌옷을 제작하는 것입니다. 질문: 소매를 지우기 위해 삭제해야 하는 레이어의 범위는 어디인가요? 답변: 노란색 레이어 3번부터 5번 레이어를 지워야 합니다. 질문: 선택한 레이어의 모든 기본 이미지를 삭제하는 가장 빠른 단축키 조합은 무엇인가요? 답변: Ctrl + A로 전체 선택 후 Delete 키를 눌러 삭제할 수 있습니다. 질문: 목 부분과 팔 부분을 다듬고 무늬를 지우기 위해 작업해야 하는 노란색 [original] | 기본 우주복을 바탕으로 무늬를 지우고 귀여운 민소매 한벌옷을 제작해봅시다. | 기본 한벌옷 | 민소매 한벌옷 | | --- | --- | | | | #### 민소매 만들기 1. 노란색 레이어 3번부터 5번 레이어를 소매를 지워줍니다. > **더 알아보기** > 선택한 레이어의 모든 기본 이미지를 지울 때는 **ctrl + a**로 전체 선택 후 **Delete** 키를 눌러 삭제할 수 있습니다. 2. 노란색 레이어 1번과 2번을 선택하여 이미지 작업을 합니다. 3. 1번 레이어에서 Pe [chunk_id] | Guides:1042:1
[task] | wikipedia [title] | 정규식 언어 [category] | Guides [rephrased] | # 문자 이스케이프(Character Escapes) 문자 이스케이프는 정규식에서 백슬래시 문자(`\`) 뒤에 오는 문자가 특수 문자나 리터럴로 해석되어야 함을 나타냅니다. 주요 문자 이스케이프 시퀀스와 그 동작은 다음과 같습니다. `\t`는 탭 문자(\u0009)를 찾습니다. 예를 들어 패턴 `(\\w+)\t`은 문자열 `"item1\titem2\t"` 내에서 `"item1\t"`와 `"item2\t"` 부분을 일치시킵니다. `\r`은 캐리지 리턴 문자(\u000D)를 찾습니다. 이 시퀀스는 줄 바꿈 문자인 `\n`과 구별됩 [original] | 문자 이스케이프(Character Escapes)는 정규식의 백슬래시 문자(\\) 뒤에 오는 문자가 아래 표와 같이 특수 문자나 리터럴로 해석되어야 함을 뜻합니다. | 이스케이프된 문자 | 설명 | 무늬 | 일치 항목 | | -- | -- | -- | -- | | `\t` | 탭 문자인 \u0009를 찾습니다. | `(\\w+)\t` | `"item1\titem2\t"`의 `"item1\t"`, `"item2\t"` | | `\r` | 캐리지 리턴 문자인 \u000D를 찾습니다. (`\r`은 줄 바꿈 문자인 `\n`과 다릅니다.) [chunk_id] | Guides:1043:1
[task] | wikipedia [title] | 정규식 언어 [category] | Guides [rephrased] | # 정규식 언어 정규식은 입력 텍스트에서 찾으려는 패턴을 의미하며, 본 가이드에서는 정규식을 정의할 때 사용할 수 있는 특정 범주의 문자, 연산자 및 구문을 안내합니다. ## 문자 클래스 문자 클래스(Character Classes)는 문자 집합 중 하나를 찾는 데 사용됩니다. 아래는 각 문자 클래스의 문법, 동작, 그리고 일치하는 예시를 설명합니다. `[`*character_group*`]` 구문은 *character_group* 내에 포함된 모든 단일 문자와 일치하는 항목을 찾습니다. 기본적으로 대문자와 소문자를 구분합니 [original] | # 학습 과정 소개 정규식은 입력 텍스트에서 찾으려는 패턴을 의미합니다. 본 과정에서는 정규식을 정의할 때 사용할 수 있는 특정 범주의 문자, 연산자 및 구분을 안내합니다. # 문자 클래스 문자 클래스(Character Classes)는 문자 집합 중 하나를 찾습니다. | 문자 클래스 | 설명 | 무늬 | 일치 항목 | | -- | -- | -- | -- | | `[`*character_group*`]` | *character_group* 내의 모든 단일 문자와 일치하는 항목을 찾습니다. 기본적으로 대/소문자를 구분합니다. | [chunk_id] | Guides:1043:0
[task] | extract_knowledge [title] | 한벌옷 만들기 [category] | Guides [rephrased] | # 한벌옷(롱코트) 아바타 아이템 제작 가이드 한벌옷(Longcoat)은 상하의가 연결된 구조를 가진 아바타 의상 아이템이다. 이 절에서는 Adobe Photoshop 기반의 제작 시트 구조와 레이어 계층 관계를 설명한다. mLua 스크립트 코드는 포함되지 않으며, 시각적 자산의 데이터 구조와 정렬 규칙에 집중한다. ## 1. 개념 및 사전 준비 ### 1.1 기본 구조 한벌옷은 상의와 동일한 구조를 따르며, 아바타의 몸을 감싸는 모든 의상 작업이 가능하다. 아이템은 아바타의 발 기준 최대 **120x120** 픽셀 범위 내에 [original] | # 학습 과정 소개 한벌옷의 제작 방법을 알아봅시다. 한벌옷은 상의와 같은 구조로 구성되어 있으며 상하가 연결된 모든 의상 작업이 가능합니다. [아바타 아이템 제작의 기본 개념](docs/?postId=588)을 참고해 아바타의 기본 개념을 먼저 숙지하길 바랍니다. # 사전 준비 아이템 제작을 위해선 Adobe Photoshop이 필요합니다. 해당 소프트웨어를 설치한 후 아래 파일을 받아 엽니다. $$attachFile {"name":"Avatar_Longcoat.psd","url":"https://mod-file.dn.ne [chunk_id] | Guides:1042:0
[task] | diverse_qa [title] | 한벌옷 만들기 [category] | Guides [rephrased] | 질문: 한벌옷은 어떤 구조로 구성되어 있으며, 어떤 의상 작업이 가능한가요? 답변: 한벌옷은 상의와 같은 구조로 구성되어 있으며, 상하가 연결된 모든 의상 작업이 가능합니다. 질문: 한벌옷 제작을 위해 사전에 설치해야 하는 소프트웨어와 준비해야 하는 파일은 무엇인가요? 답변: Adobe Photoshop이 필요하며, 'Avatar_Longcoat.psd' 파일을 받아서 엽니다. 질문: 아바타 아이템 제작 시 권장되는 최대 크기는 얼마이며, 기준점은 어디인가요? 답변: 아바타 발을 기준으로 최대 120x120 안에서 제작하는 것이 [original] | # 학습 과정 소개 한벌옷의 제작 방법을 알아봅시다. 한벌옷은 상의와 같은 구조로 구성되어 있으며 상하가 연결된 모든 의상 작업이 가능합니다. [아바타 아이템 제작의 기본 개념](docs/?postId=588)을 참고해 아바타의 기본 개념을 먼저 숙지하길 바랍니다. # 사전 준비 아이템 제작을 위해선 Adobe Photoshop이 필요합니다. 해당 소프트웨어를 설치한 후 아래 파일을 받아 엽니다. $$attachFile {"name":"Avatar_Longcoat.psd","url":"https://mod-file.dn.ne [chunk_id] | Guides:1042:0
[task] | diverse_qa [title] | 정규식 언어 [category] | Guides [rephrased] | 질문: 문자 이스케이프(Character Escapes)의 기본 정의는 무엇인가요? 답변: 문자 이스케이프는 정규식의 백슬래시 문자(\) 뒤에 오는 문자가 특수 문자나 리터럴로 해석되어야 함을 뜻합니다. 질문: `\t` 이스케이프 시퀀스는 어떤 문자를 찾나요? 답변: 탭 문자인 \u0009를 찾습니다. 질문: `(\\w+)\t` 패턴을 `"item1\titem2\t"` 문자열에 적용했을 때 일치하는 항목은 무엇인가요? 답변: `"item1\t"` 및 `"item2\t"` 항목이 일치합니다. 질문: `\r` 이스케이프 시퀀스는 [original] | 문자 이스케이프(Character Escapes)는 정규식의 백슬래시 문자(\\) 뒤에 오는 문자가 아래 표와 같이 특수 문자나 리터럴로 해석되어야 함을 뜻합니다. | 이스케이프된 문자 | 설명 | 무늬 | 일치 항목 | | -- | -- | -- | -- | | `\t` | 탭 문자인 \u0009를 찾습니다. | `(\\w+)\t` | `"item1\titem2\t"`의 `"item1\t"`, `"item2\t"` | | `\r` | 캐리지 리턴 문자인 \u000D를 찾습니다. (`\r`은 줄 바꿈 문자인 `\n`과 다릅니다.) [chunk_id] | Guides:1043:1
[task] | knowledge_list [title] | 정규식 언어 [category] | Guides [rephrased] | 제시된 문서는 메이플스토리 월드(mLua)의 스크립트 API나 컴포넌트 구조가 아닌, **정규식(Regular Expression) 언어의 문자 이스케이프(Character Escapes) 문법**에 대한 설명입니다. 따라서 mLua의 `Property`, `Method`, `Event Handler` 또는 서버/클라이언트 실행 공간 제약이 존재하지 않으며, 순수한 문자열 매칭 규칙만 명시되어 있습니다. 주어진 원문에 포함된 정보만으로 핵심 사실을 추출한 목록은 다음과 같습니다. 1. 문자 이스케이프는 정규식의 백슬래시 문자(` [original] | 문자 이스케이프(Character Escapes)는 정규식의 백슬래시 문자(\\) 뒤에 오는 문자가 아래 표와 같이 특수 문자나 리터럴로 해석되어야 함을 뜻합니다. | 이스케이프된 문자 | 설명 | 무늬 | 일치 항목 | | -- | -- | -- | -- | | `\t` | 탭 문자인 \u0009를 찾습니다. | `(\\w+)\t` | `"item1\titem2\t"`의 `"item1\t"`, `"item2\t"` | | `\r` | 캐리지 리턴 문자인 \u000D를 찾습니다. (`\r`은 줄 바꿈 문자인 `\n`과 다릅니다.) [chunk_id] | Guides:1043:1
[task] | extract_knowledge [title] | 정규식 언어 [category] | Guides [rephrased] | # 정규식 언어: 문자 클래스 ## 개념 설명 정규식(Regular Expression)은 입력 텍스트에서 찾으려는 패턴을 정의하는 문법입니다. **문자 클래스(Character Classes)** 는 특정 조건을 만족하는 문자 집합 중 하나를 매칭하기 위한 정규식의 기본 구성 요소입니다. 주요 문자 클래스 유형은 다음과 같습니다. 1. **단일 문자 목록**: `[...]` 문법으로 괄호 안에 나열된 문자 중 하나를 찾습니다. 2. **배제 목록**: `[^...]` 문법으로 괄호 안에 나열된 문자가 *아닌* 문자를 찾습니 [original] | # 학습 과정 소개 정규식은 입력 텍스트에서 찾으려는 패턴을 의미합니다. 본 과정에서는 정규식을 정의할 때 사용할 수 있는 특정 범주의 문자, 연산자 및 구분을 안내합니다. # 문자 클래스 문자 클래스(Character Classes)는 문자 집합 중 하나를 찾습니다. | 문자 클래스 | 설명 | 무늬 | 일치 항목 | | -- | -- | -- | -- | | `[`*character_group*`]` | *character_group* 내의 모든 단일 문자와 일치하는 항목을 찾습니다. 기본적으로 대/소문자를 구분합니다. | [chunk_id] | Guides:1043:0
[task] | wikipedia [title] | 정규식 언어 [category] | Guides [rephrased] | # 앵커(Anchors)와 원자적 제로-너비 어설션(Atomic Zero-Width Assertions) 앵커(Anchors) 또는 너비가 0인 원자적 어설션(atomic zero-width assertions)은 문자열 내에서 일치 항목을 검색할 위치를 지정하는 역할을 수행합니다. 이 요소를 사용하면 정규식 엔진은 문자열 전체를 순회하거나 실제 문자를 소비하지 않고, 특정 조건이 만족되는 위치에서만 매칭을 시도합니다. 대표적으로 `^` 기호는 문자열 또는 줄의 시작 부분에서만 일치 항목을 찾도록 지시하며, 예로 `^http:` [original] | 앵커(Anchors) 또는 너비가 0인 원자적 어설션(atomic zero-width assertions)은 문자열에서 일치 항목을 찾는 위치를 지정합니다. 앵커를 사용하면 정규식 엔진은 문자열을 통과하거나 문자를 사용하지 않고 지정된 위치에서만 일치 항목을 검색합니다. 예를 들어 `^` 기호는 줄이나 문자열의 시작 부분에서 일치 항목을 찾도록 합니다. `^http:`는 줄의 시작 부분에서만 "http:"를 찾습니다. | 앵커 | 설명 | 무늬 | 일치 항목 | | -- | -- | -- | -- | | `^` | 문자열의 시작 부 [chunk_id] | Guides:1043:2
[task] | distill [title] | 정규식 언어 [category] | Guides [rephrased] | # 정규식: 수량자 및 역참조 수량자(Quantifiers)는 이전 요소(문자, 그룹, 클래스)의 반복 횟수를 제어합니다. 기본 수량자는 **탐욕( Greedy)** 모드이며, `?`를 붙이면 **비탐욕(Lazy)** 모드로 전환됩니다. ## 수량자 (Quantifiers) | 수량자 | 설명 | 비탐욕 (`?` 추가) | | :--- | :--- | :--- | | `*` | 0개 이상 | `*?` : 0개 이상, **최소** 개수 | | `+` | 1개 이상 | `+?` : 1개 이상, **최소** 개수 | | `?` | [original] | 수량자(Quantifiers)는 일치 항목의 입력에 있어야 하는 문자, 그룹 또는 문자 클래스의 인스턴스 수를 지정합니다. | 수량자 | 설명 | 무늬 | 일치 항목 | | -- | -- | -- | -- | | `*` | 이전 요소를 0개 이상 찾습니다. | `a.*c` | `"abcbc"`의 `"abcbc"` | | `+` | 이전 요소를 1개 이상 찾습니다. | `be+` | `"been"`의 `"bee"`, `"bent"`의 `"be"` | | `?` | 이전 요소를 0개 또는 1개 찾습니다. | `rai?` | `"rain [chunk_id] | Guides:1043:4
[task] | extract_knowledge [title] | 정규식 언어 [category] | Guides [rephrased] | # 정규식 문자 이스케이프 (Character Escapes) ## 1. 개념 설명 정규식에서 문자 이스케이프는 백슬래시(`\`) 뒤에 오는 문자가 특수 문자나 리터럴로 해석되어야 함을 나타냅니다. 이는 정규식 엔진이 언어의 구문 요소(예: `*`, `?`)와 해당 문자 자체를 의미하는 리터럴(예: `\*`, `\?`)을 구분하게 합니다. ## 2. API 사용법 (이스케이프 시퀀스) 다음 표는 백슬래시 뒤에 따라오는 문자와 그 의미를 정의합니다. | 이스케이프 시퀀스 | 설명 | | :--- | :--- | | `\t` | [original] | 문자 이스케이프(Character Escapes)는 정규식의 백슬래시 문자(\\) 뒤에 오는 문자가 아래 표와 같이 특수 문자나 리터럴로 해석되어야 함을 뜻합니다. | 이스케이프된 문자 | 설명 | 무늬 | 일치 항목 | | -- | -- | -- | -- | | `\t` | 탭 문자인 \u0009를 찾습니다. | `(\\w+)\t` | `"item1\titem2\t"`의 `"item1\t"`, `"item2\t"` | | `\r` | 캐리지 리턴 문자인 \u000D를 찾습니다. (`\r`은 줄 바꿈 문자인 `\n`과 다릅니다.) [chunk_id] | Guides:1043:1
[task] | diverse_qa [title] | 정규식 언어 [category] | Guides [rephrased] | 질문: 앵커(Anchors)와 너비가 0인 원자적 어설션은 정규식에서 어떤 역할을 합니까? 답변: 문자열에서 일치 항목을 찾는 위치를 지정하며, 정규식 엔진이 문자를 사용하지 않고 지정된 위치에서만 일치 항목을 검색하도록 합니다. 질문: `^` 기호는 어떤 위치에서 일치 항목을 찾습니까? 답변: 문자열의 시작 부분에서 일치 항목을 찾으며, 문자열이 여러 줄이라면 줄의 시작 부분에서 일치 항목을 찾습니다. 질문: `^http:` 패턴을 사용할 때 "http:"가 일치하려면 어떤 조건이 필요합니까? 답변: "http:"가 반드시 줄 [original] | 앵커(Anchors) 또는 너비가 0인 원자적 어설션(atomic zero-width assertions)은 문자열에서 일치 항목을 찾는 위치를 지정합니다. 앵커를 사용하면 정규식 엔진은 문자열을 통과하거나 문자를 사용하지 않고 지정된 위치에서만 일치 항목을 검색합니다. 예를 들어 `^` 기호는 줄이나 문자열의 시작 부분에서 일치 항목을 찾도록 합니다. `^http:`는 줄의 시작 부분에서만 "http:"를 찾습니다. | 앵커 | 설명 | 무늬 | 일치 항목 | | -- | -- | -- | -- | | `^` | 문자열의 시작 부 [chunk_id] | Guides:1043:2
[task] | extract_knowledge [title] | 정규식 [category] | Guides [rephrased] | # 정규식 옵션: IgnorePatternWhitespace, RightToLeft, ExplicitCapture mLua의 `Regex` 클래스는 패턴 매칭 시 동작 방식을 제어하기 위한 `RegexOption`을 지원합니다. 이 절에서는 `IgnorePatternWhitespace`, `RightToLeft`, `ExplicitCapture` 옵션의 개념, API 사용법, 예제 및 주의사항을 설명합니다. ## 1. IgnorePatternWhitespace ### 개념 설명 기본적으로 정규식 패턴 내의 공백은 문자열의 일부 [original] | 이스케이프되지 않은 공백을 패턴에서 무시합니다. ```lua -- IgnorePatternWhitespace 옵션 설정하지 않음 local pattern = "\\b \\(? ( (?>\\w+) ,?\\s? )+ [\\.!?] \\)? # Matches an entire sentence." local input = "This is the first sentence. Is it the beginning of a literary masterpiece? I think not. Instead, it is a nonsensical parag [chunk_id] | Guides:1041:5
[task] | distill [title] | 정규식 언어 [category] | Guides [rephrased] | **그룹화 구문(Grouping constructs)** 정규식의 하위 식을 캡처하거나 조건을 정의합니다. | 구문 | 설명 | | :--- | :--- | | `(`*하위 식*`)` | 캡처 그룹. 서수(2부터 시작)를 할당합니다. | | `(?<`*이름*`>`*하위 식*`)` <br> 또는 `(?'`*이름*`'`*하위 식*`)` | 명명된 캡처 그룹. | | `(?<`*이름1*`-`*이름2*`>`*하위 식*`)` <br> 또는 `(?'`*이름1*`-`*이름2*`'`*하위 식*`)` | **균형 조정 그룹(Balancing g [original] | 그룹화 구문(Grouping constructs)은 정규식의 하위 식(subexpression)을 나타내며 입력 문자열의 부분 문자열을 캡처합니다. | 그룹화 구문 | 설명 | 무늬 | 일치 항목 | | -- | -- | -- | -- | | `(`*하위 식*`)` | 일치하는 하위 식을 캡처하고 서수(2부터 시작)를 할당합니다. | `(\\w)` | `"deep"`의 `"d"`,`"e"`, `"e"`, `"p"` | | `(?<`*이름*`>`*하위 식*`)` 또는 `(?'`*이름*`'`*하위 식*`)` | 일치하는 하위 식을 명 [chunk_id] | Guides:1043:3
[task] | diverse_qa [title] | 정규식 언어 [category] | Guides [rephrased] | 질문: 그룹화 구문(Grouping constructs)의 주요 역할은 무엇인가요? 답변: 그룹화 구문은 정규식의 하위 식(subexpression)을 나타내며 입력 문자열의 부분 문자열을 캡처합니다. 질문: `(\\w)` 패턴을 `"deep"`에 적용했을 때 일치하는 항목은 무엇인가요? 답변: `"deep"`의 `"d"`, `"e"`, `"e"`, `"p"`가 일치합니다. 질문: `(?<double>\\w)\\k<double>` 패턴에서 `(?<double>\\w)`는 어떤 기능을 수행하나요? 답변: 일치하는 하위 식을 명령된 [original] | 그룹화 구문(Grouping constructs)은 정규식의 하위 식(subexpression)을 나타내며 입력 문자열의 부분 문자열을 캡처합니다. | 그룹화 구문 | 설명 | 무늬 | 일치 항목 | | -- | -- | -- | -- | | `(`*하위 식*`)` | 일치하는 하위 식을 캡처하고 서수(2부터 시작)를 할당합니다. | `(\\w)` | `"deep"`의 `"d"`,`"e"`, `"e"`, `"p"` | | `(?<`*이름*`>`*하위 식*`)` 또는 `(?'`*이름*`'`*하위 식*`)` | 일치하는 하위 식을 명 [chunk_id] | Guides:1043:3
[task] | distill [title] | DataStorage 사용량 제한 알아보기 [category] | Guides [rephrased] | # DataStorage 사용량 제한 DataStorage 사용량이 기준치를 초과하면 크리티컬 리포트에 기록되며, 향후 사용이 제한될 예정입니다. 제한은 **출시된 월드**에서만 적용되며, 월드 인스턴스 전체를 기준으로 한 번에 계산됩니다. ## Credit 소모 규칙 - 기본: **요청(Request) 1개당 Credit 1개** 소모. - 요청 1개의 데이터 크기가 크면 Credit이 추가로 소모될 수 있음. - Credit 소모 기준은 **FunctionGroup**에 따라 다름. ## FunctionGroup Credi [original] | # 학습 과정 소개 DataStorage를 기준치 이상으로 사용할 경우 크리티컬 리포트에 기록됩니다. 향후 기준치 이상 사용할 수 없도록 제한이 도입될 예정입니다. 크리에이터는 데이터 사용량을 사전에 점검하기를 권장합니다. 출시된 월드에서만 DataStorage 사용량이 제한됩니다. # 데이터 요청과 Credit 소모 데이터 사용량은 크리에이터가 제작한 월드의 월드 인스턴스 전체를 한 번에 계산해 적용됩니다. DataStorage류의 함수는 기본적으로 **요청(Request) 1개 당 1개의 Credit**을 사용합니다. [chunk_id] | Guides:1044:0
[task] | extract_knowledge [title] | 정규식 언어 [category] | Guides [rephrased] | # 앵커(Anchors)와 너비가 0인 원자적 어설션 ## 1. 개념 설명 앵커(Anchors) 또는 너비가 0인 원자적 어설션(atomic zero-width assertions)은 문자열 내에서 일치 항목을 찾을 위치를 제한하는 기능입니다. 이 기능을 사용하면 정규식 엔진은 특정 위치에서만 일치 여부를 확인하며, 실제로는 문자를 소비하지 않습니다. 이를 통해 "문자열의 시작", "줄의 끝", "단어 경계" 등 특정 조건이 충족되는 위치에서만 매칭이 일어나도록 제어할 수 있습니다. ## 2. API 사용법 (앵커 종류) mLu [original] | 앵커(Anchors) 또는 너비가 0인 원자적 어설션(atomic zero-width assertions)은 문자열에서 일치 항목을 찾는 위치를 지정합니다. 앵커를 사용하면 정규식 엔진은 문자열을 통과하거나 문자를 사용하지 않고 지정된 위치에서만 일치 항목을 검색합니다. 예를 들어 `^` 기호는 줄이나 문자열의 시작 부분에서 일치 항목을 찾도록 합니다. `^http:`는 줄의 시작 부분에서만 "http:"를 찾습니다. | 앵커 | 설명 | 무늬 | 일치 항목 | | -- | -- | -- | -- | | `^` | 문자열의 시작 부 [chunk_id] | Guides:1043:2
[task] | wikipedia [title] | DataStorage 사용량 제한 알아보기 [category] | Guides [rephrased] | # DataStorage 사용량 제한 ## 개요 MapleStory Worlds의 DataStorage는 기준치 이상으로 사용될 경우 크리티컬 리포트(Critical Report)에 기록됩니다. 향후에는 기준치를 초과하는 사용이 완전히 차단될 수 있으므로, 크리에이터는 데이터 사용량을 사전에 점검하는 것이 권장됩니다. 이러한 사용량 제한은 현재 출시된 월드에서만 적용됩니다. ## 데이터 요청과 Credit 소모 데이터 사용량은 크리에이터가 제작한 월드의 월드 인스턴스 전체를 기준으로 한 번에 계산하여 적용됩니다. DataStor [original] | # 학습 과정 소개 DataStorage를 기준치 이상으로 사용할 경우 크리티컬 리포트에 기록됩니다. 향후 기준치 이상 사용할 수 없도록 제한이 도입될 예정입니다. 크리에이터는 데이터 사용량을 사전에 점검하기를 권장합니다. 출시된 월드에서만 DataStorage 사용량이 제한됩니다. # 데이터 요청과 Credit 소모 데이터 사용량은 크리에이터가 제작한 월드의 월드 인스턴스 전체를 한 번에 계산해 적용됩니다. DataStorage류의 함수는 기본적으로 **요청(Request) 1개 당 1개의 Credit**을 사용합니다. [chunk_id] | Guides:1044:0
[task] | knowledge_list [title] | 정규식 언어 [category] | Guides [rephrased] | 제시된 문서에는 mLua 스크립트 언어 및 API 관련 정보가 포함되어 있지 않으며, 정규식 언어의 '교체 구문(Alternation Constructs)'과 '대체(Substitutions)' 문법에 대한 설명만 포함되어 있습니다. 따라서 요청하신 "mLua API 이름·매개변수·반환 타입·동기화/서버·클라이언트 제약"에 해당하는 정보는 원문에 존재하지 않아 해당 항목을 작성할 수 없습니다. 원문에 포함된 정보만으로 정규식 관련 핵심 사실만 정리하면 다음과 같습니다. 1. `|` (세로 막대) 교체 구문은 세로 막대로 구분된 [original] | 교체 구문(Alternation Constructs)은 either/or 또는 조건부 일치를 허용하도록 정규식을 수정합니다. | 교체 구문 | 설명 | 무늬 | 일치 항목 | | -- | -- | -- | -- | | `\|` | 세로 막대(\|)로 구분된 한 가지 요소와 일치합니다. | `th(e\|is\|at)` | `"this is the day."`의 `"the"`, `"this"` | | `(?(`*표현식*`)`*예*`\|`*아니오*`)` 또는 `(?(`*표현식*`)`*예*`)` | *표현식*으로 지정한 정규식 패턴이 일치 [chunk_id] | Guides:1043:5
[task] | wikipedia [title] | 정규식 언어 [category] | Guides [rephrased] | 그룹화 구문(Grouping constructs)은 정규식에서 하위 식(subexpression)을 나타내며, 입력 문자열의 부분 문자열을 캡처하는 역할을 수행합니다. 그룹화 구문의 종류와 그 동작 방식은 다음과 같습니다. 가장 기본적인 형태인 `(하위 식)`은 일치하는 하위 식을 캡처하고, 2부터 시작하는 서수(ordinal number)를 할당합니다. 예를 들어 `(\\w)`라는 무늬를 사용하면 "deep"이라는 문자열에서 "d", "e", "e", "p" 각각이 개별적으로 캡처됩니다. 명명된 그룹은 `(?<이름>하위 식)` [original] | 그룹화 구문(Grouping constructs)은 정규식의 하위 식(subexpression)을 나타내며 입력 문자열의 부분 문자열을 캡처합니다. | 그룹화 구문 | 설명 | 무늬 | 일치 항목 | | -- | -- | -- | -- | | `(`*하위 식*`)` | 일치하는 하위 식을 캡처하고 서수(2부터 시작)를 할당합니다. | `(\\w)` | `"deep"`의 `"d"`,`"e"`, `"e"`, `"p"` | | `(?<`*이름*`>`*하위 식*`)` 또는 `(?'`*이름*`'`*하위 식*`)` | 일치하는 하위 식을 명 [chunk_id] | Guides:1043:3
[task] | distill [title] | 정규식 언어 [category] | Guides [rephrased] | # 정규식: 교체 구문 및 대체 ## 교체 구문 (Alternation Constructs) `either/or` 또는 조건부 일치를 허용하는 구문입니다. | 구문 | 설명 | 예시 패턴 | 매칭 결과 | | :--- | :--- | :--- | :--- | | `\|` | 세로 막대로 구분된 요소 중 하나와 일치 | `th(e\|is\|at)` | `"the"`, `"this"` | | `(?(`*표현식*`)`*예*`\|`*아니오*`)`<br>`(?(`*표현식*`)`*예*`)` | *표현식*이 0-너비 어설션으로 평가되어 참이 [original] | 교체 구문(Alternation Constructs)은 either/or 또는 조건부 일치를 허용하도록 정규식을 수정합니다. | 교체 구문 | 설명 | 무늬 | 일치 항목 | | -- | -- | -- | -- | | `\|` | 세로 막대(\|)로 구분된 한 가지 요소와 일치합니다. | `th(e\|is\|at)` | `"this is the day."`의 `"the"`, `"this"` | | `(?(`*표현식*`)`*예*`\|`*아니오*`)` 또는 `(?(`*표현식*`)`*예*`)` | *표현식*으로 지정한 정규식 패턴이 일치 [chunk_id] | Guides:1043:5
[task] | knowledge_list [title] | 정규식 언어 [category] | Guides [rephrased] | 제공된 문서에는 '수량자' 섹션의 본문이 포함되어 있지 않으며, '그룹화 구문(Grouping constructs)'에 대한 정보만 존재합니다. 따라서 요청하신 '수량자'에 대한 정보는 원문에 없어 생성할 수 없으며, 원문에 명시된 **그룹화 구문**에 대한 핵심 사실만 아래에 정리합니다. *참고: 제공된 원문은 mLua 스크립트 언어 및 API 문서가 아닌, 일반 정규식(Regular Expression) 문법 가이드입니다. 따라서 mLua API 이름, 매개변수, 반환 타입, 서버/클라이언트 제약 사항 등은 원문에 존재하지 않 [original] | 그룹화 구문(Grouping constructs)은 정규식의 하위 식(subexpression)을 나타내며 입력 문자열의 부분 문자열을 캡처합니다. | 그룹화 구문 | 설명 | 무늬 | 일치 항목 | | -- | -- | -- | -- | | `(`*하위 식*`)` | 일치하는 하위 식을 캡처하고 서수(2부터 시작)를 할당합니다. | `(\\w)` | `"deep"`의 `"d"`,`"e"`, `"e"`, `"p"` | | `(?<`*이름*`>`*하위 식*`)` 또는 `(?'`*이름*`'`*하위 식*`)` | 일치하는 하위 식을 명 [chunk_id] | Guides:1043:3
[task] | wikipedia [title] | 정규식 언어 [category] | Guides [rephrased] | ## 수량자 수량자(Quantifiers)는 정규 표현식에서 일치 항목의 입력에 포함되어야 하는 문자, 그룹 또는 문자 클래스의 인스턴스 수를 지정하는 요소입니다. 수량자는 기본 모드와 비탐욕 모드(lazy mode)로 나뉘며, 비탐욕 모드에는 `?` 기호가 붙습니다. 기본 수량자 중 `*`는 이전 요소를 0개 이상 찾습니다. 예를 들어 무늬 `a.*c`를 `"abcbc"`에 적용하면 `"abcbc"` 전체가 일치합니다. `+`는 이전 요소를 1개 이상 찾으며, 무늬 `be+`는 `"been"`에서 `"bee"`를, `"bent [original] | 수량자(Quantifiers)는 일치 항목의 입력에 있어야 하는 문자, 그룹 또는 문자 클래스의 인스턴스 수를 지정합니다. | 수량자 | 설명 | 무늬 | 일치 항목 | | -- | -- | -- | -- | | `*` | 이전 요소를 0개 이상 찾습니다. | `a.*c` | `"abcbc"`의 `"abcbc"` | | `+` | 이전 요소를 1개 이상 찾습니다. | `be+` | `"been"`의 `"bee"`, `"bent"`의 `"be"` | | `?` | 이전 요소를 0개 또는 1개 찾습니다. | `rai?` | `"rain [chunk_id] | Guides:1043:4