Q:
檢查回文字符串
如果給定的字符串是回文,返回true屿讽,反之昭灵,返回false吠裆。
如果一個(gè)字符串忽略標(biāo)點(diǎn)符號(hào)、大小寫(xiě)和空格烂完,正著讀和反著讀一模一樣试疙,那么這個(gè)字符串就是palindrome(回文)。
注意你需要去掉字符串多余的標(biāo)點(diǎn)符號(hào)和空格抠蚣,然后把字符串轉(zhuǎn)化成小寫(xiě)來(lái)驗(yàn)證此字符串是否為回文祝旷。
函數(shù)參數(shù)的值可以為"racecar","RaceCar"和"race CAR"嘶窄。
palindrome("eye")應(yīng)該返回一個(gè)布爾值
palindrome("eye")應(yīng)該返回 true.
palindrome("race car")應(yīng)該返回 true.
palindrome("not a palindrome")應(yīng)該返回 false.
palindrome("A man, a plan, a canal. Panama")應(yīng)該返回 true.
palindrome("never odd or even")應(yīng)該返回 true.
palindrome("nope")應(yīng)該返回 false.
palindrome("almostomla")應(yīng)該返回 false.
palindrome("My age is 0, 0 si ega ym.")應(yīng)該返回 true.
palindrome("1 eye for of 1 eye.")應(yīng)該返回 false.
palindrome("0_0 (: /-\ :) 0-0")應(yīng)該返回 true.
***
A:
function palindrome(str) {
str=str.replace(/\W|_/gi,'');//重點(diǎn)在于正則表達(dá)式怀跛。多個(gè)條件請(qǐng)用‘|’分開(kāi)。
str = str.toLowerCase();
var a = str.split("").reverse().join('');//注意split() reverse() join()
的使用對(duì)象柄冲。split join應(yīng)用于string而reverse應(yīng)用于數(shù)組.
return a==str;
}
palindrome("I don't have a cat.");
*******
正則表達(dá)式查閱:http://www.cnblogs.com/yirlin/archive/2006/04/12/373222.html