호지

[프로그래머스] 옹알이(2) 문제풀이 JS 본문

알고리즘/프로그래머스

[프로그래머스] 옹알이(2) 문제풀이 JS

_hoji

정규표현식으로 이용하면 쉽게 풀수 있다.

옹알이는 aya, ye, woo, ma 중에 하나만 가능하고,

같은 말을 동시에 사용할 수 없다.

따라서 aya뒤에 aya가 안오는 aya와

ye뒤에 ye가 안오는 ye

woo뒤에 woo가 안오는 woo

ma뒤에 ma가 안오는 ma만 허용하는 정규표현식을 만들어서

이 정규 표현식이 매치될 경우만 answer를 증가하면 문제를 풀 수 있다.

 

* ?!와 같이 사용하면 바로뒤에 이 문자 아닐 때

?=와 같이 사용하면 바로뒤에 이 문자가 오는 경우만 골라낼 수 있다.

function solution(babbling) {
  let answer = 0
  const regex = /^(aya(?!aya)|ye(?!ye)|woo(?!woo)|ma(?!ma))+$/
  for(const b of babbling){
    if(b.match(regex)) answer++
  }
  return answer
}

https://school.programmers.co.kr/learn/courses/30/lessons/133499

Comments