Wolfram Language

Processamento de texto e linguagem

Palíndromos

Um palíndromo é um número, uma palavra, ou oração que são lidos da mesma forma da esquerda pra direita e da direita pra esquerda. Use PalindromeQ, suas opções, e outras funções de baixo nível relacionadas com cadeia de caracteres para testar palavras e orações palíndromas.

Este é um palíndromo em inglês.

In[1]:=
Click for copyable input
PalindromeQ["racecar"]
Out[1]=

O nome Anna também é um palíndromo, mas você ignora a letra maiúscula.

In[2]:=
Click for copyable input
PalindromeQ["Anna", IgnoreCase -> True]
Out[2]=

Use Decapitalize como uma alternativa para fazer com que o primeiro caractere apareça em letra minúscula.

In[3]:=
Click for copyable input
PalindromeQ[Decapitalize["Anna"]]
Out[3]=

O verbo em francês "rêver" é um palíndromo também, mas você tem que ignorar o acento.

In[4]:=
Click for copyable input
PalindromeQ["rêver", IgnoreDiacritics -> True]
Out[4]=

Use RemoveDiacritics para processar o verbo.

In[5]:=
Click for copyable input
PalindromeQ[RemoveDiacritics["rêver"]]
Out[5]=

Com frases palíndromas, geralmente você precisa também processar a cadeia de caracteres inicial.

In[6]:=
Click for copyable input
sentence = "Now, sir, a war is won!";
In[7]:=
Click for copyable input
PalindromeQ[sentence]
Out[7]=
In[8]:=
Click for copyable input
StringDelete[sentence, PunctuationCharacter | Whitespace]
Out[8]=
In[9]:=
Click for copyable input
StringDelete[sentence, PunctuationCharacter | Whitespace]; PalindromeQ[%, IgnoreCase -> True]
Out[9]=

Exemplos Relacionados

de en es fr ja ko ru zh