I think you need to use the global flag in the regex:
str = str.replace(/[^a-z0-9]/ig, '').toLowerCase();
As this string will return false:
isPalindrome("a.b.a") -> false isPalindrome("ab.a") -> true
isPalindrome("a.b.a") -> false
isPalindrome("ab.a") -> true
Very true @Theofanis Despoudis — serious omission there.
Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment's permalink.
Hide child comments as well
Confirm
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
I think you need to use the global flag in the regex:
str = str.replace(/[^a-z0-9]/ig, '').toLowerCase();
As this string will return false:
isPalindrome("a.b.a") -> false
isPalindrome("ab.a") -> true
Very true @Theofanis Despoudis — serious omission there.