JavaScript에서 회문을 확인하는 완벽한 방법
1876 단어 palindromejavascript
먼저 회문이 무엇인지 명확히합시다.
Wikipedia에 따르면 "회문(palindrome)은 단어, 숫자, 구문 또는 앞뒤로 읽어도 같은 문자 시퀀스입니다."
위의 정의에서 "읽다"라는 단어가 핵심입니다. 구두점과 대소 문자 때문입니다.
위의 내용은 우리가 취해야 할 처음 두 단계가 무엇인지에 대한 단서입니다. 구두점과 공백을 제거하고 소문자를 강제합니다.
그런 다음 문자열을 비교하여 그 반대인지 확인할 수 있습니다.
기능은 다음과 같습니다.
const isPalindrome = (str) => {
// Force to string
// Eliminate punctuation and spaces
// Force lower case
// Split
let arr = str.toString().replace(/[^A-Za-z0-9_]/g, "").toLowerCase().split('');
// Join into one word
let joined = arr.join('');
// Reverse and join into one word
let reverseJoined = arr.reverse().join('');
//compare
return joined == reverseJoined;
}
검사할 표현식이 문자열인지 확인한 후
str.replace(/[^A-Za-z0-9_]/g, "")
를 사용하여 구두점과 공백을 제거하고 toLowerCase()
를 사용하여 소문자를 강제 적용합니다.결과 문자열에서 배열을 만들어야 하므로 배열을 뒤집은 다음 문자열로 결합하여 문자열의 반대를 얻습니다. 이것은 "원본"배열입니다.
let arr = str.toString().replace(/[^A-Za-z0-9_]/g, "").toLowerCase().split('');
"원본", 소문자, 공백 없음, 구두점 문자열 없음:
let joined = arr.join('');
반전된 문자열:
let reverseJoined = arr.reverse().join('');
마지막으로 부울을 반환하는 비교:
return joined == reverseJoined;
이것으로 우리는 단어와 구문에도 작동하는 회문 검사기 만들기를 완료했습니다. 실제로 작동하는 것을 볼 수 있습니다here.
Reference
이 문제에 관하여(JavaScript에서 회문을 확인하는 완벽한 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/zamfir80/the-perfect-way-to-check-for-a-palindrome-in-javascript-3bd3텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)