Programming Language/Javascript

[Javascript] String 메소드

Sergemeow 2022. 11. 2. 21:47

자바스크립트에서도 데이터타입 string을 사용한다. 

string으로 정의된 문자열은 index 번호를 가지고 있다.

 

1. 명령어

- 문자열 일부 추출

substring(시작지점, 끝지점-1).

slice(시작지점, 끝지점). substring과 같으나 음수 입력이 가능한 것이 특징이다.

substr(시작지점, 시작지점부터의 개수).

charAt(index) 해당 위치의 문자만 추출

- 대체

replace(기존 문자열, 새로운 문자열) 첫번째 대칭되는 문자열만 대체되며 대소문자가 구분된다.

- 채우기

padStart(목표문자길이, 채울문자) 앞쪽에 채우기

padEnd(목표문자길이, 채울문자) 뒷쪽에 채우기

- 인덱스

indexOf(문자열, index from), lastIndexOf(문자열) 지정 문자열의 index를 구함

-  존재여부

startWith(), endWith() 지정문자열이 탐색대상 문자열에서 시작이나 끝에 존재하는지 여부를 true나 false로 반환

 

2. 활용

- 문자열 추출

먼저 문자열 str을 Apple, Banana, Kiwi로 작성해준다.

라인 46에선 0번째 문자부터 5번째전까지, 즉 Apple를 콘솔창에 출력시킬 것이고,

라인 47은 문자열 뒤 네자리인 Kiwi를,

라인 48은 7번째인 B부터 6개 문자 - Banana를,

라인 49는 3번째인 l부터 문자열 뒤 첫글짜인 i 전까지인 le, Banana, Kiw를,

라인 50은 문자열의 두번째 문자인 p를

출력시킬 것이다.

의도한대로 출력되는걸 확인할 수 있다.

 

- 대체

replace 명령어 활용이다. 내친김에 정규표현식도 써보자.

라인 54에서는 대체될 텍스트 양쪽에 /를 붙이고 뒤에 i를 붙여줬다. 대소문자 구분을 없애준 것이다.

라인 57에서는 i대신 g를 붙여줬는데, 중복으로 나오는 모든 Microsoft들을 대체해주는 것이다. 

대소문자도 무시하고 모든 텍스트들을 대체하고 싶다면 gi를 붙여주면 된다.

결과를 보자.

라인54에서 MicRosoFt를 대체하는 것으로 작성하였지만 i 덕에 대소문자를 무시하고 Hogwart로 잘 대체해주었다. 

라인57의 결과값으론 모든 Microsoft 텍스트가 대체된걸 확인할 수 있다.