# 22-07-14

분명 알았다고 생각했던 것도 기억이 잘 안나는 경우가 있어서 작은 것이라도 기록해보아야겠다😵

BOJ에서 UCPC는 무엇의 약자일까? (opens new window)문제를 풀면서 알게 된 깨알 지식을 정리해보자✍

# 원하는 문자열만 남기자 (정규식)

input.replace(/[^UCP]/g, "");

문제 풀기 위해서 "UCPC"외의 문자열은 모두 없애고 U,C,P만 남긴 후 UCPC순으로 문자열을 남길 수 있는지 확인하는 방법으로 접근했다.

항상 input.replace(/[^A-Z]/g, "").split("");와 같이 (대문자 알파벳 A에서 Z까지 외에는 ""로 대체)만 사용해보았는데, 위와같이 특정 문자(U, C, P) 외에는 ""로 대체하도록도 사용가능하다.

실제 풀이 (opens new window)할 때는 input.replace(/[^UCPC]/g, "").split("");와 같이 UCPC로 작성했는데 UCP로 작성해도 충분하다...

# indexOf()

남겨진 문자열이 U,C,P,C 순서인지 확인하기 위해 indexOf()를 사용하였다.

MDN문서 (opens new window)

arr.indexOf(searchElement[, fromIndex])

2번째 인자에 입력된 숫자(fromIndex)가 있다면 그 숫자에 해당하는 인덱스부터 searchElement를 찾는다.

  • 2번째 인자가 없다면 0번째 인덱스부터 찾는다.
  • 배열의 길이보다 크거나 같은 경우 검색되지 않는다(-1반환)
  • 음수를 입력하는 경우 배열끝에서부터 검색(이 경우에도 앞에서부터 검색한다)

indexOf()의 경우에는 이번에 처음 알게 된 것이 아닌데도 잊어 버려서 다시 찾아보게 되었다...😇

알겠네~하고 넘어가지 말고 이렇게 짤막하게라도 정리해 두면서 잊지 않고 활용할 수 있도록 해보자💪