문자열 치환작업을 하는도중 정규표현식의 필요성을 느끼게 되어 공부하였다..
const regex = "/^k/"
const str = "kim tae wan king of kidult kkk";
str.match(refex) // ["k","k","k","k","k","k"]
^
: 줄의 시작에서 일치
$
: 줄의 끝에서 일치
abcdefg
oqifhlwe
3iruop23rug
/^a/ : abcdefg
/e$/ : oqifhlwe
.
: 임의의 한 문자와 일치
ajueoirjqowjdudwdj
/.j/ : aj, rj, wj, dj
/..j/ : irj, owj, wdj
a|b
: a또는 b일치
김밥볶음밥삶은계란라이스밥버거계란후라이
/밥|계란/ : 밥 밥 계란 밥 계란
*
: 0회이상 반복되는 문자와 가능한 많이일치
+
: 1회이상 반복되는 문자와 가능한 많이 일치
*?, +?
: 위 조건에 가능한 적게 일치
lolem input sekecfwlkh doi2eijwofinginggggg
/ing*/g : in ing, inggggg => in을 검색하고 g가 있는거 없는거 모두 가능한 많이 카운트
/ing*?/g : in, in, in
/ing+/g : ing, inggggg
/ing+?/g : ing, ing
[]
: []안에 있는 조건은 각각 or을 나타낸다
ex [abc] == a|b|c
ex [a-z] == a~z사이의 알파벳
fqlkjfelhwfehfwe|list_number|wfewqldjf|text_1|fehofhfew
ewflkjewlkhfewklfh|brand_name|ewkhfewfkhf|ABC_DEF|
fewjhfgejkfjgjkwefgfkwegwfekgwefk
/\|[a-zA-Z0-9_\n]+\|/ : |list_number|, text_1|, |brand_name|
/\|[^|]+\|/ : : |list_number|, text_1|, |brand_name|, |ABC_DEF|