A-HA💡/JS

[JS/알고리즘] 문자열에서 특정 문자 찾는 9+2가지 방법

탱 'ㅅ' 2023. 10. 17. 19:50

return array

String.match(RegExp)

return 주어진 정규식에 부합하는 배열 | null

 

RegExp.exec(searchStr)

return 주어진 문자에서 정규식과 부합하는 결과 배열 | null

더보기

const str = 'Blue! Whale'

const regex1 = /e!/g  // == RegExp('e!', 'g')

regex1.lastIndex  // 0

regex1.exec(str)  // [ 'e!', index: 3, input: 'Blue! Whale!', groups: undefined ]

regex1.lastIndex  // 5 : 반드시 exec() 호출한 다음에!

str.match(regex1)  // [ 'e!', 'e!' ]

 

return index

String.search(RegExp)

return 주어진 정규식에 부합하는 첫번째 인덱스 | -1

 

String.indexOf(searchStr, fromIndex: 0) - 정규식 가능?

return 주어진 문자가 일치하는 첫번째 인덱스 | -1

더보기

const str = 'canal'

str.indexOf('a')  // 1

str.indexOf('a', 2)  // 3

 

str.indexOf('a', 7)  // -1 : fromIndex 문자열 길이 넘으면, 검색X

str.indexOf('a', -5)   ('a') // 1 : fromIndex 음수면 기본값

str.indexOf('A')  // -1 : 대소문자 구분

 

// 빈 값 찾을 경우 undefined 탐색

str.indexOf('')  // 0 

str.indexOf('', 3)  // 3

str.indexOf('', 7)  // 5 

str.lastIndexOf('', -5)  ('') // 0 

 

String.lastIndexOf(searchStr, fromIndex: +Infinity) - 정규식 가능?

return 역순으로 주어진 문자가 일치하는 첫번째 인덱스 | -1

더보기

const str = 'canal'

str.lastIndexOf('a')  // 3

str.lastIndexOf('a', 2)  // 1

 

str.lastIndexOf('a', 7)  ('a') // 3 : fromIndex 문자열 길이 넘으면, 기본값

str.lastIndexOf('a', -5)  ('a', 0)  // -1 : fromIndex 음수면 0 지정

str.lastIndexOf('c', -5)  ('c', 0)  // 0 : fromIndex 음수면 0 지정

str.indexOf('A')  // -1 : 대소문자 구분

 

// 빈 값 찾을 경우 fromIndex 반환

str.lastIndexOf('')  // 0

str.lastIndexOf('', 3)  // 3 

str.lastIndexOf('', 7)  // 5 

str.lastIndexOf('', -5)  ('', 0) // 0 

 

return boolean

String.includes()

 

RegExp.test(searchStr)

 

String.startsWith(searchStr, fromIndex: 0)

return 대상 문자열이 주어진 문자로 시작하면 true, or false

더보기

const str = 'Blue Whale'

str.startsWith('Blue')  // true

str.startsWith('Blue', -5)  // true

str.startsWith('Blue', 2)  // false

str.startsWith('Whale', 5)  // true

str.startsWith('blue')  // false : 대소문자 구분

 

String.endsWith(searchStr, length: String.length)

length: 대상 문자열의 길이

return 대상 문자열이 주어진 문자로 끝나면 true, or false

더보기

const str = 'Blue Whale'

str.endsWith('Whale')  // true

str.endsWith('Whale', 15)  // true

str.endsWith('Whale', 2)  // false

str.endsWith('Blue', 4)  // true

str.endsWith('whale')  // false : 대소문자 구분

 

 

cf.

- String.replace(RegExp, 변경하려는 문자열)

- String.split(RegExp)

- 참고. 배열에서 특정 값 찾는 방법

 

[JS] 배열에서 특정 값 찾는 방법

return array Array.filter((el, idx, arr) => el === value) return 주어진 정규식에 부합하는 배열 | [] 얕은 복사 return element Array.find((el, idx, arr) => el === value) return 주어진 값이 일치하는 첫번째 요소 | undefined retur

119taeyoung.tistory.com

 

 

 

ref.

 

[2022.04.20] 자바스크립트 문자열에서 특정 문자 찾는 방법 8종

사용자가 인풋 값에 입력한 문자를 포함하고 있는지 확인하는 기능을 만드려고 하니정리해두지 않으면 까먹고 또 같은 것은 찾고 있을 것 같아서 기록하면서 기억해보려 한다.또, 문득 문자 찾

velog.io

 

정규표현식으로 특정 문자열 추출하고 치환하기

Javascript에서 정규표현식의 사용에 대해 알아보고, Python에서의 format 메서드를 구현해보자.

velog.io