Palindrome detection: Difference between revisions

→‎{{header|ed}}: More reliable and even-length-friendly palindrome detection.
(→‎{{header|ed}}: Minor grammatical fix)
(→‎{{header|ed}}: More reliable and even-length-friendly palindrome detection.)
 
Line 1,920:
H
,p
g/^(.)(.+*)\1$/s//\2/
g/^(.)(.+*)\1$/s//\2/
g/^(.)(.+*)\1$/s//\2/
g/^(.)(.+*)\1$/s//\2/
g/^(.)(.+*)\1$/s//\2/
g/^(.)(.+*)\1$/s//\2/
g/^(.)(.+*)\1$/s//\2/
g/^(.)(.+*)\1$/s//\2/
g/^(.)(.+*)\1$/s//\2/
g/^(.)(.+*)\1$/s//\2/
g/^(.)(.+*)\1$/s//\2/
g/^(.)(.+*)\1$/s//\2/
gv/^(.)(.+)\1$|^.?$/s/.*/\2Not a palindrome!/
g/^(.)(.+)\1?$/s//\2Palindrome!/
g/^(.)(.+)\1$/s//\2/
v/^(.)(.+)\1$|^.$/s/.*/Not a palindrome!/
g/^.$/s//Palindrome!/
,p
Q
Line 1,944 ⟶ 1,941:
 
<pre>$ cat palindrome.ed | ed -lEGs palindrome.input
Newline appended
rotor
racecar
level
rosetta
oppo
Palindrome!
Palindrome!
Palindrome!
Not a palindrome!</pre>
g/^.$/s//Palindrome!</pre>
 
=={{header|Eiffel}}==
104

edits