티스토리 뷰

String 객체

.search(정규표현식 | 문자열)

정규표현식을 전달인자, 가장처음 매칭되는 위치를 반환, 매칭이 없다면 -1을 반환

"JavaScript".search(/script/i);

.replace(정규표현식 | 문자열, 교체할 문자열 | 함수)

'g'가 있음 모든 매칭 문자열 교체, 만약 교체할 문자열에 $숫자 가 나오면, 숫자 번째 매칭된 부분 문자열로 치환됨.

두번째 인자로 교체될 문자열을 동적으로 계산하는 함수 가능

.match(정규표현식)

매치된 결과를 배열로 반환. g의 유무에 따라 아래와 같은 결과

"1=a plus 2=bb equals 3=c".match(/(\d+)=(\w)/); // => ["1=a", "1", "a"]
"1=a plus 2=bb equals 3=c".match(/(\d+)=(\w)/g); // => ["1=a", "2=b", "3=c"]

g 가 없음,리턴값에 index 프로퍼티가 존재하게 되며, 이는 매칭이 시작된 위치.

input 프로퍼티가 존재, 이는 검색 대상 문자열의 사본.

s.match(r) 은 r.exec(s)와 같은 값을 반환.

.split(문자 | 정규표현식)

전달인자를 분리 기준으로 문자열을 쪼개 배열을 리턴.

RegExp 객체

문자열 리터럴과 정규표현식은 둘다 '\'를 이스케이프 시퀀스로 사용하기 때문에 RegExp 생성자의문자열 리터럴로 전달할 때는 '\'를 '\\'로 바꿔야 한다.

new RegExp("\\d{}5", "g")

.exec(문자열)

매치된 부분이 없다면 null 리턴, 매치된 부분이 있다면 배열 리턴, [매치된 문자열, 괄호1, ...]

index 프로퍼티에 매치가 일어난 idx 저장.

input 프로퍼티에 검색 대상 문자열. 참조?

g 플래그 무시

* 정규표현식 lastIndex 속성에 다음 매치를 시작할 idx값 저장.

처음부터 다시 검색하려면 반듯시 0으로 초기화 해야 함.

while((result = pattern.exec(text)) != null) {
  ... 반복 처리..
}

.test(문자열)

매치되는 부분이 있음 true 아님 false를 리턴.

.lastIndex가 가르키는 위치에서 검색을 시작.

예제코드

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함