팰린드롬 문제

J Park·2024년 3월 4일

알고리즘

목록 보기
3/3
var isPalindrome = function(s) {
    // 주어진 문자열에서 알파벳과 숫자만을 추출하여 새로운 문자열 생성
    const cleanedString = s.lowerCase().replace([^a-z0-9],"");
    
    // 팰린드롬 여부를 확인하여 반환
    return cleanedString === s.split("").reverse().join("");
};

isPalindrome 함수는 주어진 문자열 s가 팰린드롬인지 확인합니다.

cleanedString 변수는 주어진 문자열에서 알파벳과 숫자만을 추출하여 새로운 문자열을 생성합니다.

toLowerCase(): 주어진 문자열의 모든 문자를 소문자로 변환합니다. 대소문자를 구분하지 않고 팰린드롬을 판단하기 위함입니다.
replace(/[^a-z0-9]/g, ''): 정규표현식 /[^a-z0-9]/g을 사용하여 문자열에서 알파벳(a-z)과 숫자(0-9)를 제외한 모든 문자를 제거합니다.
생성된 cleanedString을 팰린드롬인지 확인하여 true 또는 false를 반환합니다.

cleanedString.split(''): 문자열을 배열로 변환합니다.
reverse(): 배열을 역순으로 뒤집습니다.
join(''): 배열을 문자열로 결합합니다.
===: 원래 문자열과 뒤집은 문자열이 같은지 비교하여 팰린드롬 여부를 확인합니다.
이렇게 주어진 문자열에서 알파벳과 숫자만을 고려하여 팰린드롬 여부를 확인하는 함수를 작성하였습니다.

profile
꾸준히 공부하는 개발자

0개의 댓글