JavaScript substring() 메서드의 기본 사용법, substring() 메서드의 기본 문법과 사용 예제
JavaScript substring() 메서드의 기본 사용법: substring() 메서드의 기본 문법과 사용 예제
JavaScript에서 문자열을 조작하는 것은 매우 일반적인 작업이며, 이를 위해 다양한 메서드가 제공됩니다. 그 중 하나가 substring() 메서드입니다. 이 글에서는 substring() 메서드의 기본 문법과 사용 예제를 통해 그 활용 방법을 자세히 알아보겠습니다.
substring() 메서드의 기본 개념
substring() 메서드는 문자열의 일부를 추출하여 새로운 문자열을 반환하는 기능을 합니다. 이 메서드는 원본 문자열을 변경하지 않으며, 두 개의 매개변수를 사용하여 추출할 부분의 시작과 끝 인덱스를 지정합니다.
기본 문법
javascriptstring.substring(indexStart, indexEnd);
- indexStart: 추출을 시작할 인덱스. 이 인덱스는 포함됩니다.
- indexEnd (선택 사항): 추출을 끝낼 인덱스. 이 인덱스는 포함되지 않습니다. 지정하지 않으면 문자열의 끝까지 추출합니다.
주요 특징
- 음수 인덱스 처리: substring() 메서드는 음수 인덱스를 0으로 처리합니다.
- 인덱스 순서 교환: indexStart가 indexEnd보다 큰 경우, 두 인덱스는 자동으로 교환됩니다.
- 범위를 벗어난 인덱스 처리: 인덱스가 문자열의 길이를 벗어나는 경우, 문자열의 끝으로 간주합니다.
substring() 메서드 사용 예제
기본 사용 예제
간단한 예제로 문자열의 일부를 추출해보겠습니다.
javascriptlet str = "Hello, World!"; let result = str.substring(0, 5); console.log(result); // "Hello"
위 예제에서는 문자열 "Hello, World!"의 처음 다섯 문자를 추출하여 "Hello"를 반환합니다.
인덱스 순서 교환
indexStart가 indexEnd보다 큰 경우, 두 인덱스는 자동으로 교환됩니다.
javascriptlet str = "JavaScript"; let result = str.substring(5, 0); console.log(result); // "JavaS"
이 예제에서 str.substring(5, 0)은 str.substring(0, 5)와 동일하게 작동하여 "JavaS"를 반환합니다.
indexEnd 생략
indexEnd를 생략하면 문자열의 끝까지 추출합니다.
javascriptlet str = "Learn JavaScript"; let result = str.substring(6); console.log(result); // "JavaScript"
위 예제에서는 str.substring(6)이 문자열 "Learn JavaScript"에서 인덱스 6부터 끝까지 추출하여 "JavaScript"를 반환합니다.
음수 인덱스 처리
substring() 메서드는 음수 인덱스를 0으로 처리합니다.
javascriptlet str = "Negative Index"; let result = str.substring(-5, 4); console.log(result); // "Nega"
이 예제에서는 indexStart가 -5로 주어졌지만, 0으로 처리되어 인덱스 0부터 4까지 추출한 Nega를 반환합니다.
범위를 벗어난 인덱스 처리
인덱스가 문자열의 길이를 벗어나는 경우, 문자열의 끝으로 간주합니다.
javascriptlet str = "Out of Range"; let result = str.substring(4, 100); console.log(result); // " of Range"
위 예제에서 indexEnd가 문자열의 길이보다 크지만, 문자열의 끝까지 추출하여 of Range를 반환합니다.
실전 활용 예제
URL에서 도메인 추출
웹 개발 시 URL에서 특정 부분을 추출하는 작업은 매우 흔합니다. substring() 메서드를 사용하여 URL에서 도메인을 추출해보겠습니다.
javascriptlet url = "https://www.example.com/path?query=123"; let start = url.indexOf("//") + 2; let end = url.indexOf("/", start); let domain = url.substring(start, end); console.log(domain); // "www.example.com"
위 예제에서는 url.indexOf("//")를 사용하여 //의 위치를 찾고, 도메인의 시작 위치를 계산합니다. 이후 url.indexOf("/", start)를 사용하여 도메인의 끝 위치를 찾고, substring() 메서드를 사용하여 도메인을 추출합니다.
사용자 입력에서 특정 키워드 추출
사용자 입력에서 특정 키워드를 추출하는 것도 자주 필요한 작업 중 하나입니다.
javascriptlet userInput = "Find the keyword in this sentence."; let keyword = "keyword"; let start = userInput.indexOf(keyword); let extractedKeyword = userInput.substring(start, start + keyword.length); console.log(extractedKeyword); // "keyword"
이 예제에서는 userInput.indexOf(keyword)를 사용하여 키워드의 시작 위치를 찾고, substring() 메서드를 사용하여 키워드를 추출합니다.
결론
JavaScript의 substring() 메서드는 문자열의 일부를 추출하는 데 매우 유용한 도구입니다. 이 메서드는 음수 인덱스를 0으로 처리하고, 인덱스 순서를 자동으로 교환하며, 범위를 벗어난 인덱스를 문자열의 끝으로 간주하는 등 여러 특징을 가지고 있습니다. 다양한 사용 예제와 실전 활용 사례를 통해 substring() 메서드의 기본 사용법과 그 응용 방법을 살펴보았습니다.
substring() 메서드를 잘 활용하면 문자열 조작 작업을 효율적으로 처리할 수 있으며, 웹 개발 등 다양한 분야에서 그 유용성을 발휘할 수 있습니다. 이러한 기초를 바탕으로 더 복잡한 문자열 처리 작업도 능숙하게 다룰 수 있게 될 것입니다.