如何使用正则表达式检查字符串是回文?

如何使用正则表达式检查字符串是回文?

这是一个我无法回答的面试问题:

如何使用正则表达式检查字符串是回文?


幕布斯6054654
浏览 985回答 3
3回答

沧海一幻觉

虽然PCRE引擎确实支持递归正则表达式,但您无法在ICU引擎上使用正则表达式(例如Apple使用的),无需额外代码即可实现此目的。你需要做这样的事情:这可以检测任何回文,但确实需要一个循环(这是必需的,因为正则表达式不能计数)。$a = "teststring";while(length $a > 1){    $a =~ /(.)(.*)(.)/;    die "Not a palindrome: $a" unless $1 eq $3;    $a = $2;}print "Palindrome";

慕的地10843

这是不可能的。回文不是由常规语言定义的。(参见,我在计算理论中学到了一些东西)
打开App,查看更多内容
随时随地看视频慕课网APP