startsWith() 및 endsWith() 함수 사용

2024-04-20

자바스크립트에서 문자열이 부분 문자열을 포함하는지 확인하는 방법

indexOf() 함수 사용:

const str = "안녕하세요, 자바스크립트입니다.";
const subStr = "스크립트";

if (str.indexOf(subStr) !== -1) {
  console.log(subStr + "는 " + str + "에 포함되어 있습니다.");
} else {
  console.log(subStr + "는 " + str + "에 포함되어 있지 않습니다.");
}

위 코드는 "안녕하세요, 자바스크립트입니다."라는 문자열에 "스크립트"라는 부분 문자열이 포함되어 있는지 확인합니다. indexOf() 함수는 부분 문자열이 처음 나타나는 위치를 반환하며, 없으면 -1을 반환합니다. 따라서 indexOf() 함수의 반환 값이 -1이 아닌 경우 부분 문자열이 포함된다는 것을 의미합니다.

const str = "안녕하세요, 자바스크립트입니다.";
const subStr = "스크립트";

if (str.includes(subStr)) {
  console.log(subStr + "는 " + str + "에 포함되어 있습니다.");
} else {
  console.log(subStr + "는 " + str + "에 포함되어 있지 않습니다.");
}

includes() 함수는 문자열이 특정 부분 문자열을 포함하는지 여부를 확인하는 더 간결한 방법입니다. indexOf() 함수와 달리 includes() 함수는 부분 문자열의 위치를 반환하지 않고 true 또는 false를 반환합니다.

const str = "안녕하세요, 자바스크립트입니다.";
const subStr = "스크립트";

if (str.search(subStr) !== -1) {
  console.log(subStr + "는 " + str + "에 포함되어 있습니다.");
} else {
  console.log(subStr + "는 " + str + "에 포함되어 있지 않습니다.");
}

search() 함수는 indexOf() 함수와 유사하지만 정규 표현식을 사용하여 부분 문자열을 검색할 수 있다는 추가적인 기능을 제공합니다.

const str = "안녕하세요, 자바스크립트입니다.";
const subStr = /스크립트/;

if (str.match(subStr)) {
  console.log(subStr + "는 " + str + "에 포함되어 있습니다.");
} else {
  console.log(subStr + "는 " + str + "에 포함되어 있지 않습니다.");
}

match() 함수는 정규 표현식을 사용하여 문자열에서 부분 문자열의 일치 항목을 찾습니다. match() 함수는 일치하는 부분 문자열의 배열을 반환하거나 null을 반환합니다.

위에 소개된 방법 외에도 다양한 방법으로 자바스크립트에서 문자열이 부분 문자열을 포함하는지 확인할 수 있습니다. 어떤 방법을 사용할지는 특정 상황과 필요에 따라 다릅니다.




예제 코드

const str = "안녕하세요, 자바스크립트입니다.";
const subStr = "스크립트";

if (str.indexOf(subStr) !== -1) {
  console.log(subStr + "는 " + str + "에 포함되어 있습니다.");
} else {
  console.log(subStr + "는 " + str + "에 포함되어 있지 않습니다.");
}

출력:

스크립트는 안녕하세요, 자바스크립트입니다.에 포함되어 있습니다.
const str = "안녕하세요, 자바스크립트입니다.";
const subStr = "스크립트";

if (str.includes(subStr)) {
  console.log(subStr + "는 " + str + "에 포함되어 있습니다.");
} else {
  console.log(subStr + "는 " + str + "에 포함되어 있지 않습니다.");
}
스크립트는 안녕하세요, 자바스크립트입니다.에 포함되어 있습니다.

search() 함수 사용:

const str = "안녕하세요, 자바스크립트입니다.";
const subStr = "스크립트";

if (str.search(subStr) !== -1) {
  console.log(subStr + "는 " + str + "에 포함되어 있습니다.");
} else {
  console.log(subStr + "는 " + str + "에 포함되어 있지 않습니다.");
}
스크립트는 안녕하세요, 자바스크립트입니다.에 포함되어 있습니다.
const str = "안녕하세요, 자바스크립트입니다.";
const subStr = /스크립트/;

if (str.match(subStr)) {
  console.log(subStr + "는 " + str + "에 포함되어 있습니다.");
} else {
  console.log(subStr + "는 " + str + "에 포함되어 있지 않습니다.");
}
스크립트는 안녕하세요, 자바스크립트입니다.에 포함되어 있습니다.

참고:

  • 위 코드는 ECMAScript 6(ES6) 이상 버전의 자바스크립트에서 작동합니다.
  • indexOf(), includes(), search(), match() 함수는 대소문자를 구분합니다. 대소문자 구분을 하지 않고 싶으면 toLowerCase() 또는 toUpperCase() 함수를 사용하여 문자열을 소문자 또는 대문자로 변환할 수 있습니다.

이 답변이 도움이 되었기를 바랍니다. 궁금한 점이 있으면 언제든지 물어보세요.




자바스크립트에서 문자열이 부분 문자열을 포함하는지 확인하는 대체 방법

startsWith() 및 endsWith() 함수 사용:

  • startsWith() 함수는 문자열이 특정 문자열로 시작하는지 확인하는 데 사용됩니다.

예제:

const str = "안녕하세요, 자바스크립트입니다.";
const subStr1 = "안녕";
const subStr2 = "입니다.";

if (str.startsWith(subStr1)) {
  console.log(subStr1 + "는 " + str + "의 시작 문자열입니다.");
}

if (str.endsWith(subStr2)) {
  console.log(subStr2 + "는 " + str + "의 끝 문자열입니다.");
}
안녕은 안녕하세요, 자바스크립트입니다.의 시작 문자열입니다.
입니다.는 안녕하세요, 자바스크립트입니다.의 끝 문자열입니다.

문자열 비교:

  • 부분 문자열을 원본 문자열의 일부로 추출한 다음 두 문자열을 직접 비교할 수 있습니다.
  • slice() 함수를 사용하여 부분 문자열을 추출하고 === 연산자를 사용하여 비교할 수 있습니다.
const str = "안녕하세요, 자바스크립트입니다.";
const subStr = "스크립트";
const extractedSubStr = str.slice(str.indexOf(subStr), str.indexOf(subStr) + subStr.length);

if (extractedSubStr === subStr) {
  console.log(subStr + "는 " + str + "에 포함되어 있습니다.");
} else {
  console.log(subStr + "는 " + str + "에 포함되어 있지 않습니다.");
}
스크립트는 안녕하세요, 자바스크립트입니다.에 포함되어 있습니다.

정규 표현식 사용:

  • 정규 표현식을 사용하여 문자열에서 부분 문자열을 검색할 수 있습니다.
  • RegExp 객체를 사용하여 정규 표현식을 만들고 test() 함수를 사용하여 문자열이 일치하는지 확인할 수 있습니다.
const str = "안녕하세요, 자바스크립트입니다.";
const subStr = /스크립트/;
const regex = new RegExp(subStr);

if (regex.test(str)) {
  console.log(subStr + "는 " + str + "에 포함되어 있습니다.");
} else {
  console.log(subStr + "는 " + str + "에 포함되어 있지 않습니다.");
}
스크립트는 안녕하세요, 자바스크립트입니다.에 포함되어 있습니다.
  • 위에 제시된 방법들은 모두 자바스크립트에서 문자열이 부분 문자열을 포함하는지 확인하는 유효한 방법입니다.
  • 어떤 방법을 사용할지는 특정 상황과 필요에 따라 다릅니다.
  • 성능이 중요한 경우 indexOf() 또는 includes() 함수를 사용하는 것이 일반적으로 가장 빠른 방법입니다.
  • 정규 표현식을 사용하면 더 복잡한 검색을 수행할 수 있지만 처리 속도가 느려질 수 있습니다.

javascript string substring


'return false' vs preventDefault() vs stopPropagation(): 비교 분석

클릭 이벤트 리스너에 return false를 추가하면 다음과 같은 두 가지 효과가 발생합니다.기본 동작 방지: 링크 이동, 페이지 새로고침 등 브라우저가 기본적으로 수행하는 동작을 막습니다.이벤트 전파 중단: 이벤트가 상위 요소로 전파되는 것을 막습니다...


Array.from() 및 reduce() 함수를 사용하여 객체 배열 정렬하기

자바스크립트에서 객체 배열을 다루는 작업은 매우 일반적입니다. 객체에는 다양한 속성과 값이 포함될 수 있으며, 이러한 속성 값을 기준으로 배열을 정렬하는 경우가 많습니다. 특히, 문자열 속성 값을 기준으로 정렬하는 경우는 더욱 빈번하게 발생합니다...


자바스크립트에서 숫자를 소수점 2자리까지 반올림하는 방법

toFixed() 함수 사용:Math. round() 및 Math. floor() 함수 사용:문자열 처리:설명:toFixed(): 숫자를 문자열로 변환하고, 지정된 소수점 자리까지 유지하며 반올림합니다.Math. round(): 숫자를 가장 가까운 정수로 반올림합니다...


당신의 코드를 깔끔하게 정리하세요: 콜백 API를 프로미스로 변환하는 5가지 방법

콜백 기반 API를 프로미스로 변환하는 방법은 여러 가지가 있습니다. 가장 일반적인 방법은 다음과 같습니다.Promise 객체 직접 사용Promise 생성자를 사용하여 새로운 프로미스 객체를 생성합니다.콜백 함수를 프로미스 객체의 resolve 또는 reject 함수에 전달합니다...


javascript string substring

자바스크립트, jQuery 및 문자열에서 하위 문자열 포함 여부를 확인하는 방법

문제: 두 개의 문자열 중 하나가 다른 문자열의 하위 문자열인지 확인하는 방법은 무엇입니까?솔루션:다음은 자바스크립트, jQuery 및 기본 문자열 메서드를 사용하여 하위 문자열 포함 여부를 확인하는 몇 가지 방법입니다