λΆνΈμΊ ν μ½μ€λ μκ³ λ‘ μ΄μμλ μ μ€νκ³Ό μ κΈ°μ νμ΅μ μ°μ! μ°μ μμλ₯Ό μ€μ νκ³ μ νκ³Ό μ§μ€μ νλ κ²μ΄ 무μλ³΄λ€ μ€μνλ€. κ·Έλ° λΆνΈμΊ ν νμ΅κ³Όμ μ€ κ°μ°¨μμ΄ νλ½λ νμ΅ ννΈκ° μμμΌλ... μ κ· ννμ! μΈκ°μκ² μ΄λ€μ§λ μΉνμ μΈ μλ°μ€ν¬λ¦½νΈλ₯Ό 곡λΆνλ λ΄κ² μ κ·ννμμ μ λ π½ μΈκ³μ΄π½ κ°μκ³ , μ½μ€μμλ μμ£Ό μ¬μ©νλ μ κ· ννμμ κ²μν΄μ μ°μ κ°μ Έλ€ μ¨λ 무방νλ€κ³ μ΄μΌκΈ°ν΄μ£Όμ΄ λλ μΌλ§μ λΆλ΄κ° μμ΄ μ κ·ννμμ λ λ΄λ λͺ» λ³Έ μ²νλ©° λ―Έλ€μλ€!
μ κ·ννμμ λ§μ£Όν λλ©΄ λ, "κ·Έλ, μ΄ κ±Έ λ΄κ° μ§μ μμ±ν μΌμ΄ μΌλ§λ λκ² μ΄...!"λΌλ©° μ μ¨ νμ΅ νμλ₯Ό μΈλ©΄νμ§λ§, μ κ·Όλμ μ κ·ννμμ μ§μ μμ±ν΄μΌ ν μΌμ΄ μ°λ¬μ λͺ λ²μ©μ΄λ μκΈ°κ² λμλ€.
μ΅κ·Ό μ½λ©ν μ€νΈ μ€λΉ κ²Έ λ§€μΌ μμΉ¨ μκ³ λ¦¬μ¦ λ¬Έμ λ₯Ό ν λ¬Έμ μ© νλ©΄μ "λ¬Έμμ΄μ λ κ° μ΄μμ κΈ°μ€μΌλ‘ split"ν΄μ£Όκ³ μΆμ μν©μ΄ μμ£Ό μμλ€. μλ₯Ό λ€μ΄ "9+3*8-10+5+1"κ³Ό κ°μ λ¬Έμμ΄μ΄ μ£Όμ΄μ‘μ λ μ°μ°κΈ°νΈλ€μ κΈ°μ€μΌλ‘ splitμ ν΄μ£Όκ³ μΆμ μν©!
κ·Έλ΄ λ λ§λ€ μ¬λ¬ μ°¨λ‘ split() λ©μλλ₯Ό μ¨μ£Όμ΄μΌ νλ μ μ΄ λ μ΄λκ° λΆνΈνλ€. λΆνΈν¨μ κ°μνλ€ μΉλλΌλ, μ½λκ° μ₯ν©ν΄μ§κ³ 볡μ‘ν΄μ‘λ€... λ¬Όλ‘ κΌ split νλ λλ¬Έλ§μ μλμκ² μ§λ§...!
λͺ¨μͺΌλ‘ κ·Έλμ μ¬λ¬ κ°μ κΈ°μ€μ μ κ°κ³ splitμ ν΄μ£Όλ λ°©λ²μ μμΉνλ©΄ λ μ κ·ννμμ μΈμλ‘ λ겨주면 λλ€λ λ΅μ΄ μ μλμλ€.
μ΅κ·Ό λλ NextJSμ λ무 λ무 μ§μ¬μ΄κ³ , κ°μλ₯Ό λ£κΈ° μμνλλ°, μμλΆν° ν μ€νΈ μ½λλ₯Ό μΈν νλ©΄μ μ κ·ννμμ λ λ€μ λ§μ£Όνκ² λμλ€...!
κ·Έλμ μκ°νκ² λμλ€...
μ΄μ λ λ μ΄μ λ¬Όλ¬λ κ³³μ΄ μλ€!
λ§ κ·Έλλ‘ μ΄λ€. μ°μ μ κ· ννμμ ν¨ν΄κ³Ό νλκ·Έλ‘ κ΅¬μ±λλ€. ν¨ν΄κ³Ό νλκ·ΈλΌ ν¨μ μλμ κ°λ€.
κΈ°λ³Έμ μΌλ‘,
/
λ‘ μ΄κ³ λ«μΌλ©°, λ¬Έμμ΄μ λ°μ΄νλ μλ΅νλ€! (λ°μ΄νλ₯Ό ν¨ν΄ μμ ν¬ν¨μν€λ©΄, λ°μ΄νκΉμ§λ₯Ό νλμ ν¨ν΄μΌλ‘ ν¬ν¨ν΄ κ²μνλ€.)μΆμ²: https://velog.io/@denmark-choco/javascript-%EC%A0%95%EA%B7%9C%ED%91%9C%ED%98%84%EC%8B%9D
μΆμ²: https://aftersiesta.tistory.com/3
κ·Έλ λ€λ©΄ μ§κΈκ» μμ£Ό μ¬μ©ν΄μ€λ μ κ·ννμμ λΆμν΄λ³΄μ!
λ€μμ μμ΄λλ‘ μ¬μ© κ°λ₯νμ§ κ²μ¬νλ μ κ·ννμμ΄λ€.
μ ν¨ν΄μ μ’
ν©ν΄μ λΆμν΄λ³΄λ©΄ κ²°κ΅,
μ μ κ·ννμμ "μμμ μνλ²³ λλ¬Έμ, μλ¬Έμ, μ«μλ‘ μ΄λ£¨μ΄μ§ λ¬Έμκ° 4, 10λ² λ°λ³΅λλ ννμ λ¬Έμμ΄"μ λνλμ μ μ μλ€.
νλκ·Έλ μμ μ΄ν΄λ³΄μλ€μνΌ μ κ·ννμμ κ²μ λ°©μμ μ€μ νκΈ° μν΄ μ¬μ©νλ€.
νλκ·Έμ μλ―Έλ λ€μκ³Ό κ°λ€.
i
: Ignore Case, λ§ κ·Έλλ‘ λμλ¬Έμλ₯Ό ꡬλ³νμ§ μκ³ ν¨ν΄μ κ²μνλ€.g
: Global, λμ λ¬Έμμ΄ λ΄μμ ν¨ν΄κ³Ό μΌμΉνλ λͺ¨λ λ¬Έμμ΄μ μ μ κ²μνλ€. (μ΄ μ΅μ
μ μ£Όμ§ μμΌλ©΄ 첫 λ²μ§Έλ‘ κ²μλλ ν¨ν΄λ§ λ°ν)m
: Multi Line: λ¬Έμμ΄μ νμ΄ λ°λλλΌλ ν¨ν΄ κ²μμ κ³μνλ€.μ μΈ νλκ·Έκ° μλμ μΌλ‘ μ€μνκ³ μμ£Ό μ¬μ©λλ νλκ·Έλ€μ΄λ€.
μ΄ μΈμλ s
, u
, y
λ±μ νλκ·Έλ€μ΄ μ‘΄μ¬νμ§λ§, μλμ μΌλ‘ μμ£Ό μ¬μ©λμ§ μλλ€.
s
:.
μ΄ κ°ν λ¬Έμ \n
λ ν¬ν¨νλλ‘ βdotallβ λͺ¨λλ₯Ό νμ±ννλ€.u
: μ λμ½λ μ 체λ₯Ό μ§μνλ€.y
: λ¬Έμ λ΄ νΉμ μμΉμμ κ²μμ μ§ννλ€.μλ°μ€ν¬λ¦½νΈμμ μ κ·ννμμ 리ν°λ΄λ‘ μμ±ν μλ μμ§λ§, RegExp μμ±μ ν¨μλ₯Ό ν΅ν΄μλ μμ±ν μ μλ€. κ·Έλ§μΈ μ¦, RegExp
λΌλ μμ±μ ν¨μκ° μ‘΄μ¬νλ€λ κ²μ΄λ€!
μ½μμ RegExp.prototype
μ μ
λ ₯νλ©΄ μλμ κ°μ μΆλ ₯μ μ΄ν΄λ³Ό μ μλ€.
μ κ·ννμμλ λ€μν λ©μλλ€ (+νλ‘νΌν°λ€)μ΄ μμμ μ μ μλ€.
μ΄ μ€ λͺ κ°μ§λ§ μ΄ν΄λ³΄λ©΄!
const target = "Is this all there is?";
const regExp = /is/;
regExp.exec(target);
// ['is', index: 5, input: 'Is this all there is?', groups: undefined]
μ λ©μλλ μΈμλ‘ μ λ¬ λ°μ λ¬Έμμ΄μ λν΄ μ κ· ννμμ ν¨ν΄μ κ²μν΄ λ§€μΉ κ²°κ³Όλ₯Ό λ°°μ΄λ‘ λ°ννκ³ , λ§€μΉ λ΄μμ΄ μμΌλ©΄ nullμ λ°ννλ€.
const target = "Is this all there is?";
const regExp = /is/;
regExp.test(target);
// true
testλ ν΄λΉ μ κ·ννμ ν¨ν΄μ ν΄λΉνλ ν¨ν΄μ΄ μλμ§ μλμ§λ₯Ό λΆλ¦¬μΈ κ°μΌλ‘ λ°ννλ€!
μ κ·ννμμ μ 체 컨μ
μ μ΄μ κ°λ€. μ§κΈ λΉμ₯ μΈμΈν κΈ°νΈλ€μ νλνλ μΈμΈ νμλ μκ² λ€.
μ 체 컨μ
μ λͺ
ννκ² μ΄ν΄νκ³ , μ€μν ν¨ν΄ κΈ°νΈλ€κ³Ό νλκ·Έ, λ©μλλ€μ μμλμμΌλ μ΄μ μ€μ μμ νμν λ νμ©νλ©΄μ κ°μ μ΅νμΌκ² λ€.
μ½κ° μ΄λ±νμ μΌκΈ° κ°μ΄ λ§λ¬΄λ¦¬ λ κ² κ°μλ°... μ무νΌ!