본문 바로가기
javascript

문자열추출

by rami_ 2021. 9. 28.

subString()

구분 데이터(값)
data 반환대상
파라미터 시작 인덱스
끝 인덱스
반환 결과

파라미터의 시작 인덱스부터 끝 인덱스 직전까지 반환

var value = "01234567";

log(value.substring(2, 5); //234 2번 인덱스 2부터 5번 인덱스 5 앞인 4까지 출력해야함.

두번째 파라미터를 작성하지 않으면 반환대상의 끝까지 반환

var value = "01234567";

log(value.substring(5)); //567

log(value.substring()); // 01234567 파라미터를 모두 작성하지 않으면 전체 반환

다양한 추출 조건 작성

var value = "01234567";

log(value.substring(5, 20)); //두번째 파라미터 값이 전체 length(8)보다 크면 전체 문자열 length를 사용. 5번 인덱스부터 끝까지 반환. 567

log(value.substirng(-7, 2)); //파라미터 값이 음수이면 0으로 간주하여 0번 인덱스부터 2번 인덱스 직전까지 반환. 01

log(value.substring(5, 1)); // 첫번째 파라미터 값이 두번째보다 크면 파라미터 값을 바꿔서 처리. value.subString(1, 5) 형태가 되며 1234가 반환됨.

log(value.substring(5, "A")); // NaN는 0으로 간주. 첫번째 파라미터 값이 두번째보다 크므로 (0,5)형태가 되며 01234 반환.

 

substr()

구분 데이터(값)
data 반환대상
파라미터 시작 인덱스
반환할 문자 수
반환 결과

파라미터의 시작 인덱스부터 지정한 문자수를 반환.

var value = "01234567";

log(value.substr(0, 3)); //0번인덱스부터 문자 3개 반환. 012

첫번째 파라미터 값이 음수이면 length에서 파라미터 값을 더해 시작 인덱스로 사용

log(value.substr(-3, 3)); //?

두번째 파라미터를 작성하지 않으면 양수 무한대로 간주

log(value.substr(4)); //4번 인덱스부터 쭉 4567

log(value.substr()); //첫번째 파라미터를 작성하지 않으면 0으로 간주하며 전체가 반환됨. 01234567

 

slice()

구분 데이터(값)
data 반환대상
파라미터 시작인덱스
끝 인덱스
반환 결과

파라미터의 시작 인덱스부터 끝 인덱스 직전까지 반환.

var value = "01234567";

log(value.slice(1, 4)); //123

log(value.slice(false, 4)); //false, undefined, null, 빈 문자열은 0으로 간주. 0123

첫번째 파라미터 값을 작성하지 않거나 NaN이면 0으로 간주.

log(value.slice("A")); //NaN이므로 0으로 간주. 01234567

log(value.slice()); //파라미터 값을 작성하지 않아 전체 반환. 01234567

두번째 파라미터 작성하지 않으면 length사용.

log(value.slice(5)); //567

log(value.slice(5, 3)); // 첫번째 파라미터가 두번째 파라미터보다 크거나 같으면 빈 문자열 반환.

두번째 파라미터 값이 음수이면 length에 더해 사용.

log(value.slice(4, -2)); //45

log(value.slice(-5, -2)); //(3,6) 345

log(value.slice(-2, -5)); //(6,3)이므로 첫번째 파라미터가 두번째 파라미터보다 커서 빈문자열 반환.

'javascript' 카테고리의 다른 글

Unicode 관련 함수  (0) 2021.09.30
정규표현식을 사용할 수 있는 함수  (0) 2021.09.29
문자열 연결, 대소문자 변환  (0) 2021.09.27
인덱스로 문자열 처리  (0) 2021.09.27
함수호출구조(?)  (0) 2021.09.23