자바스크립트 정규표현식

(2018-12-31)

정규표현식

1. 자바스크립트 정규표현식정규표현식 참조

  ㅇ 2개의 슬래시(/) 사이에 `문자열 패턴 식(정규표현식)`을 줌
     - 例) var testRegExp = /(\.\w{3,4}$)/;  
        . 마침표(.)가 있고, 
        . 그 뒤에 3 혹은 4개의 문자(w{3,4})가 연속하며,
        . 이들을 서브 패턴()화 해서,
        . 문자열 끝($)에서 찾음


2. 주요 패턴 문자메타 문자 (특수 문자 기호)                                  ☞ 정규표현 메타 문자 참조
     -  ^ : 행의 처음
     -  $ : 행의 끝
     -  직전 문자 반복을 나타내는 수량자
        .  * (0회 이상 매치) : 매치시 배열 반환, 미 매치시 빈 배열 반환
           .. 例) "aaaac".match(/a*/) => ["aaaa"]
           .. 例) "12a 12b 12c".match(/12d*/) => ["12"]
           .. 例) "12a 12b 12c".match(/12b*/g) => ["12","12b","12"]
           .. 例) "aab aac".match(/k*/); => [""]
           .. 例) "da caa baaa".match(/a*/); => [""]
        .  + (1회 이상 매치) : 매치시 배열 반환, 미 매치시 null 반환
           .. 例) "aab aac".match(/k*/); => null
           .. 例) "da caa baaa".match(/a+/); => ["a"]
           .. 例) "da caa baaa".match(/a+/g); => ["a", "aa", "aaa"]
        .  ? (0 또는 1회 만 매치) : 매치시 배열 반환, 미 매치시 빈 배열 반환
        .  +? (1회 만 매치)
        .  *? (최소 매치)
     -  반복 범위 지정을 나타내는 수량자
        .  {n,m} (범위 지정 반복, n회부터 m회까지 반복)
     -  특정 용도 앵커
        .  \d : 1개 숫자에 일치
        .  \w : 1개 문자에 일치
        .  \. : 마침표 `.` (임의 한 문자 `.`와의 혼동 방지)
     -  [ ] : 1개 문자 클래스
        . 특정한 한 문자를 나타냄 (例: 영어 소문자 모음 1개 문자 [aeiou])
     -  ( ) : 서브 패턴, 그룹화

  ㅇ 수정자(modifier) 또는 옵션 지정 (플래그)
     -  g : 전역 검색 (모든 일치를 전부 대상으로 함. 그렇지 않으면 최초 일치 만)
     -  i : 대소문자 구분 안함
     -  m : 일치 대상에 줄바꿈이 있더라도 전체 검색

  ㅇ 조건
     -  | : OR 조건 


3. 자바스크립트 정규표현식 생성 방법 둘생성자 함수에 의한 생성 방식
     - 例) const regexp1 = new RegExp("^abc");
  ㅇ 리터럴(Literal)에 의한 생성 방식
     - 例) const regexp1 = /^abc/;


4. 자바스크립트 정규표현식 메소드String 객체메서드 
     - 문자열.search(패턴)  : 패턴에 부분 일치하는 위치(인덱스)를 반환
        . (비일치면, -1 반환)
     - 문자열.match(패턴)   : 패턴전방 일치하는 문자열을 배열로 반환
        . (비일치면, null 반환)
        . 例) "aab aac".match(/a/g); => ["a","a","a","a"]
        . 例) "aab aac".match(/a+/); => ["aa","aa"]
     - 문자열.split(패턴)   : 패턴에 일치하는 문자열들을 분할시켜 배열화 반환
     - 문자열.replace(패턴 또는 바뀔 문자열, 바꿀 문자열)
        . 패턴에 일치하는 문자열을 지정한 문자열로 치환
        . 例) "aA bB cC".replace("c","C") => "aA bB CC"

  ㅇ RegExp 객체메서드
     - 패턴.exec(문자열)    : 패턴에 일치하는 최초 문자열 1개 만을 배열로 반환
        . (비일치면, null 반환)
     - 패턴.test(문자열)    : 패턴에 일치하면 true, 못하면 false 반환


[JS 활용] 1. JS 활용 2. JS 문자열 활용 3. JS 수치 활용 4. JS 정규표현식
  1.   기술공통
  2.   기초과학
  3.   진동/파동
  4.   방송/멀티미디어/정보이론
  5.   전기전자공학
  6.   통신/네트워킹
  7.   정보기술(IT)
        1. 정보기술
    1.   전산기초
    2.   컴퓨터구조
    3.   프로그래밍
          1. 프로그램, 프로그래밍
          2. 프로그래밍 기법
      1.   프로그래밍 언어론
      2.   구조적 프로그래밍
      3.   객체지향 프로그래밍
      4.   자료표현코드
      5.   자료구조
      6.   알고리즘
      7.   시스템 소프트웨어
      8.   프로그래밍언어 종류
            1. 프로그래밍 언어
        1.   C
        2.   C++
        3.   자바(Java)
        4.   자바스크립트
              1. JavaScript
              2. JS 기초 문법
          1.   JS 변수,타입
          2.   JS 연산자
          3.   JS 함수
          4.   JS 객체
          5.   JS 배열/Map/Set
          6.   JS 활용
            1.   1. JS 활용
                2. JS 문자열 활용
                3. JS 수치 활용
                4. JS 정규표현식
          7.   JS 웹문서 제어
        5.   PHP
        6.   파이썬
        7.   (기타 언어)
      9.   프로그래밍 기타일반
    4.   데이터베이스
    5.   소프트웨어 공학
    6.   운영체제
    7.   정보보호/보안
    8.   IT 기타기술
  8.   공업일반(기계,재료등)
  9.   표준/계측/품질
  10.   기술경영

 
        최근수정     요약목록     참고문헌