回文词是单词,短语或数字,其向后读与向前读相同。例如马拉雅拉姆语,夫人,护士奔跑等等。
我们应该在这里使用正则表达式以仅允许使用字母数字字符。“ \ W”是一个内置的正则表达式,使我们的工作变得容易。有一些步骤可用来检查提供的字符串是否是回文。
首先,我们需要将字符串的所有字符更改为小写。
稍后,我们需要删除所有非字母数字值。可以通过使用名为'\ W'的内置正则表达式来完成此任务,也可以构建自己的正则表达式。
我们需要将所有非字母数字值替换为none(“”)。可以使用称为的内置方法来完成此任务replace()
。
一旦从字符串中获取了非字母数字值,就需要检查它是否在向后和向前读取相同的值。
我们需要使用string.reverse()方法反转精简后的字符串,并将生成的字符串与原始字符串进行比较。
如果两者相等,则将在输出中显示“ true”,否则将显示“ false”。
在下面的示例中,尽管发送了非字母数字值(例如*,&等),但程序仅检查字母数字值并显示输出。
<html> <body> <script> function palindrome(str){ var reg = /[\W_]/g; // instead of '\W' we also can take "/[^a-zA-Z0-9]+/g" var smstr = str.toLowerCase().replace(reg, ""); var reversed = smstr.split("").reverse().join(""); if(reversed === smstr){ document.write("true"); } else { document.write("false"); } } palindrome("a929a*/(';-=,.*") </script> </body> </html>
true