정규식 표현 기본
-
Letters
- 입력과 같은 문자열 반환
-
Digits
- 입력한 숫자자와 같은 숫자 반환
-
/d
- 문자열중 첫번째 숫자 하나만
-
/D
- 문자열중 숫자가 아닌 첫번째 문자
-
.
- 문자열중 어떤 문자열이던 첫번째 문자열
- /d. 이면 숫자 다음 첫번째 문자열 하나까지
-
.
- 문자열에서 dot 선택하고 싶을때
-
[abc]
- 문자열에서 a, b, c가 있는 문자열
- abc문자열에서는 a만 반환
- zbc문자열에서는 b만 반환
-
- 문자열에서 a, b, c가 없는 문자열
-
[a-z]
- 문자열에서 괄호안에 입력되는 문자
-
예
[A-C][n-p][a-c]
- 첫번째 문자는 [A-C]
- 두번째 문자는 [n-p]
- 세번째 문자는 [a-c]
-
[0-9]
- 문자열에서 괄호안에 입력되는 숫자
-
\w
- 알파벳 문자
-
\W
- 알파벳 문자가 아닌것
-
{m}
- m번 반복
-
{m, n}
- m ~ n 번 반복
-
*
- 0번 또는 그 이상 매칭 되는 문자열
-
+
- 한번 또는 그 이상 매칭 되는 문자열
-
?
- optional character
-
/s
- 공백
-
/S
- 공백이 아닌 문자열
-
^...$
- ^ 문자열의 시작
- $ 문자열의 끝
-
(...)
- capture group
- 예
//파일명전체, 파일명(확장자제외) 두개 반환 "file_record_transcript.pdf".match(/^(file.+)\.pdf$/); //(2) ["file_record_transcript.pdf", "file_record_transcript", index: 0, input: "file_record_transcript.pdf", groups: undefined] //파일명전체 한번 반환 "file_record_transcript.pdf".match(/^file.+\.pdf$/); //["file_record_transcript.pdf", index: 0, input: "file_record_transcript.pdf", groups: undefined] //파일명전체 두번반환 "file_record_transcript.pdf".match(/^(file.+\.pdf)$/); //(2) ["file_record_transcript.pdf", "file_record_transcript.pdf", index: 0, input: "file_record_transcript.pdf", groups: undefined]
-
(a(bc))
- captrue Group
- 예
"Jan 1987".match(/(\w+ (\d+))/); //(3) ["Jan 1987", "Jan 1987", "1987", index: 0, input: "Jan 1987", groups: undefined]0: "Jan 1987"1: "Jan 1987"2: "1987"groups: undefinedindex: 0input: "Jan 1987"length: 3__proto__: Array(0)
-
(.*)
- Captrue all
- 예
"1280x720".match(/(\d+)x(\d+)/); //(3) ["1280x720", "1280", "720", index: 0, input: "1280x720", groups: undefined]
-
(abc|def)
- all condition
- 괄요한 문자열이 포함된 단어 모두 반환
-
예
"I love cats".match(/I love (cats|dogs)/) //(2) ["I love cats", "cats", index: 0, input: "I love cats", groups: undefined]
"I love dogs".match(/I love (cats|dogs)/) //(2) ["I love dogs", "dogs", index: 0, input: "I love dogs", groups: undefined]
"I love cats".match(/(cats|dogs)/) //(2) ["cats", "cats", index: 7, input: "I love cats", groups: undefined]
match
-
syntax
string.match(regExp)
-
return
정규식에 맞는 value가 배열에 담겨 반환된다. 값이 없으면 Null 반환
- 예
const reg = /(\D*)(\d*)/i;
const A = "img10".match(reg);
// A = (3) ["img10", "img", "10", index: 0, input: "img10.png", groups: undefined], a = "img10.png"