๋ฌธ์์ด์์ ํน์ ๋ด์ฉ์ ์ฐพ๊ฑฐ๋, ๋์ฒด, ์ถ์ถํ๋ ์ฉ๋๋ก ์ฌ์ฉํ๋ ํจํด.
๋ํ์ ์ผ๋ก ์ฌ์ฉ์๊ฐ ์
๋ ฅํ ์ด๋ฉ์ผ, ํด๋ํฐ ๋ฒํธ ๋ฑ์ด ์ฌ๋ฐ๋ฅธ์ง ๊ฒ์ฆํ๊ณ ์ถ์ ๋ ์ฌ์ฉํ๋ค.
๋ฌธ์์ด์์ ํน์ ๋ด์ฉ์ ์ฐพ๊ธฐ ์ํด์ .includes()์ ์ฌ์ฉํ ์๋ ์๋๋ฐ
'abc'.includes('a') //true
'๊ฐ๋๋ค'.includes('๋ผ') //false
๊ทธ๋ฌ๋ includes()๋ง์ผ๋ก๋ ๋ฌธ์ ๋ด์ 'ํ๊ธ์ด๋ผ๋ ํ์์ด ํฌํจ๋์ด ์์ด?','์ซ์'๊ฐ ์์ด? a๋ก ์์ํ๋ ๋ฌธ์๊ฐ ์์ด? ๊ฐ์ ๊ฑด ๊ฒ์ฌํ ์ ์๋ค.
new RegExp('ํํ', '์ต์
')
new RegExp('[a-z]', 'gi')
/ํํ/์ต์
/[a-z]/gi
์ ๊ท์.test(๋ฌธ์์ด)
๋ฌธ์์ด.match(์ ๊ท์)
๋ฌธ์์ด.replace(์ ๊ท์, ๋์ฒด๋ฌธ์)
const str='์ฐ๋ฆฌ ์คํฐ๋7์กฐ ์งฑ์ด๋ค'
const regexp=/์งฑ์ด๋ค/
console.log(regexp.test(str)) // true
console.log(str.match(regexp)) //['์งฑ์ด๋ค']
console.log(str.replace(regexp,๋ฉ์ง๋ค)) //์ฐ๋ฆฌ ์คํฐ๋7์กฐ ๋ฉ์ง๋ค
g
: ์ ์ญ ๊ฒ์(gํ๋๊ทธ ์์ผ๋ฉด ์ผ์นํ๋ ์ฒซ ๋ฒ์งธ ๋ฌธ์๋ง ๋ฐํ)
i
: ์์ด ๋์๋ฌธ์ ๊ตฌ๋ถ ์๊ณ ์ผ์น
m
: ์ฌ๋ฌ ์ค ์ผ์น(^๋ ์ ์ฒด ๋ฌธ์์ด์ด ์๋ ๊ฐ ์ค๋ณ๋ก ๋์๋๊ฒ ๋ง๋ค์๊ธฐ ๋๋ฌธ์ ์ฌ๋ฌ์ค์ ๊ฒ์ํด์ผ ํ๋ค๋ฉด mํ๋๊ทธ๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค)
^ab
: ์ค ์์
์ ์๋ ab์ ์ผ์น
ab$
: ์ค ๋
์ ์๋ ab์ ์ผ์น
const park = 'ํฌ์๋์ ๊ฐ์์ง๋ฅผ ์ข์ํฉ๋๋ค'
//์ค ์์์ 'ํฌ'๊ฐ ์๋์ง ํ์ธํ๊ณ ์ถ์๋
const regexp=/^ํฌ/
console.log(regexp.test(park)) // true
const park2=`๊ฐ์์ง๋ฅผ ์ข์ํ๋\n
ํฌ์๋`
const regexp=/^ํฌ/
console.log(regexp.test(park2)); //false
const park2=`๊ฐ์์ง๋ฅผ ์ข์ํ๋
ํฌ์๋`
const regexp2=/^ํฌ/m
console.log(regexp2.test(park2)) // true
const park3=`ํฌ์๋์ ์ข์ํฉ๋๋ค\n
๊ฐ์์ง`
console.log(/^๊ฐ/m.test(park3)) ๐ // true? false?
true
.
: ์์์ ํ ๋ฌธ์์ ์ผ์น
a|b
: a ๋๋ b์ ์ผ์น
ab?
: b๊ฐ ์๊ฑฐ๋ b์ ์ผ์น
const pyo = '์น์ฐ๋์ ๋กค๋ฆฌํ์ ๋จน๊ณ ๋กค๋ฆฐ๋
ธ๋๋ฅผ ๋ค์ผ๋ฉฐ ๋กค๊ฒ์์ ํ์ต๋๋ค.'
const regexp=/๋กค|๊ฒ์/
const regexp2=/๋กค./
const regexp3=/๋กค../
console.log(regexp.test(pyo)) // true
console.log(pyo.match(regexp2)) // ['๋กค๋ฆฌ', '๋กค๋ฆฐ', '๋กค๊ฒ']
console.log(pyo.match(regexp3)) // ๐
`['๋กค๋ฆฌํ', '๋กค๋ฆฐ๋
ธ', '๋กค๊ฒ์']`
[a-z]
: a-z ์ฌ์ด์ ์๋ฌด ๋ฌธ์ ํ๋์ ์ผ์น(์์ด ์๋ฌธ์)
[A-Z]
: A-Z ์ฌ์ด์ ์๋ฌด ๋ฌธ์ ํ๋์ ์ผ์น(์์ด ๋๋ฌธ์)
[0-9]
: 0-9 ์ฌ์ด์ ๋ฌธ์ ๊ตฌ๊ฐ์ ์ผ์น(์ซ์)
[๊ฐ-ํฃ]
: ๊ฐ๋ถํฐ ํฃ ์ฌ์ด์ ๋ฌธ์ ๊ตฌ๊ฐ์ ์ผ์น(ํ๊ธ)
const lee = '์น์ฉnim...๋ค์ ๋ฐํ ํ์ดํ
์
๋Da'
console.log(lee.match(/[A-Z]/i)) //['n', 'i', 'm', 'D', 'a']
console.log(lee.match(/[A-Z]/)) //๐
[D]
{3}
: 3๊ฐ ์ฐ์ ์ผ์น
{3,}
: 3๊ฐ ์ด์ ์ฐ์ ์ผ์น
{3,5}
: 3๊ฐ ์ด์ 5๊ฐ ์ดํ ์ฐ์ ์ผ์น
\w
: 63๊ฐ ๋ฌธ์์ ์ผ์น(๋์์๋ฌธ 52๊ฐ, ์ซ์10๊ฐ,_)
\b
: 63๊ฐ ๋ฌธ์์ ์ผ์นํ์ง ์๋ ๋ฌธ์ ๊ฒฝ๊ณ
\d
: ์ซ์์ ์ผ์น
console.log("the fox is brown".match(/\b/g));//['', '', '', '', '', '', '', '']
console.log("ํ๊ธ์ ์๋ฉ๋๋ค".match(/\b/g)); <//null
console.log("ํ๊ธ์ ์ง์ง ์๋ฉ๋๋ค".match(/\w/g)); //null
const lim = '062-944-1439 ๊ด์ฃผ๋ง์ง ์ก์ ๋ก๊ฐ๋น ์ ํ๋ฒํธ์
๋๋ค.์ฑ์ด๋ ์ฌ๊ธฐ ์ ๋ช
ํ๊ฐ์?'
console.log(lim.match(/\d{2,3}/g)) //['062', '944', '143']
console.log(lim.match(/\d{3,}/g)) // ๐
['062', '944', '1439']
+
: 1ํ ์ด์ ์ฐ์ ์ผ์น
*
: 0ํ ์ด์ ์ฐ์ ์ผ์น
aaaAA11@naver.com
const email = document.querySelector('input.email').value
if (/[a-zA-Z0-9]+@[a-z]{2,}\.[a-z]{2,3}/.test(email)) {
alert("ํ์ํด์!");
} else {
alert("์ด๋ฉ์ผ ํ์์ด ์๋๋๋ค");
}
});