문자열이 조건에 부합하는지를 묻는 문제는 정규표현식 문제로 바로 보인다
하지만 3번째 케이스에서 정규표현식으로 표현 기호를 찾지 못해서 시간을 꽤 날렸다
()로 캡쳐된 것을 참조해서 중복으로 여러번 쓰고자 할때
()\반복할숫자
예 )
/(tokki)\1/ === /(tokki)(tokki)/
위와 같이 사용하면 괄호 안 캡쳐 내용을 중복으로 쓸 수 있다
https://www.acmicpc.net/problem/4659
let input = [];
const readline = require("readline").createInterface({
input: process.stdin,
output: process.stdout,
});
readline.on("line", (line) => {
input.push(line);
});
readline.on("close", () => {
solution(input);
process.exit();
});
const solution = (inp) => {
inp.pop();
let regex1 = /[aeiou]/;
let regex2 = /[aeiou]{3}|[^aeiou]{3}/;
let regex3 = /([a-df-np-z])\1/;
let ans = [];
for (el of inp) {
if (regex1.test(el) && !regex2.test(el) && !regex3.test(el)) {
ans.push(`<${el}> is acceptable.`);
} else {
ans.push(`<${el}> is not acceptable.`);
}
}
console.log(ans.join("\n"));
};
'개발 노트 > 백준, 프로그래머스 풀이' 카테고리의 다른 글
[백준 1475/javascript] 방 번호 (0) | 2022.10.02 |
---|---|
[백준 9655/javascript] 돌 게임 (0) | 2022.10.01 |
[백준 14606/javascript] 피자 (0) | 2022.09.29 |
[백준 11727/javascript] 2Xn 타일링 2 (0) | 2022.09.28 |
[백준 3022/javascript] PRASE (0) | 2022.09.27 |
댓글