Perl, 45 byte
;print$_=<>,~~reverse;m;esrever~~,><=_$tnirp;
Cukup mudah, print
input ( $_=<>
) diikuti oleh reverse
itu. reverse
kembali $_
karena kita menggunakannya dalam konteks skalar dengan awalan ~~
. Kemudian kami mencocokkan ( m//
menggunakan ;
sebagai pembatas), dalam konteks kosong, dengan kebalikan dari skrip.
Jika kami dapat menjamin, kami tidak perlu membuat palindrome, esrever,><=_$tnirp
kami dapat mempersingkat kode menjadi 43 byte :
g.print$_=<>,reverse.m.esrever,><=_$tnirp.g
Pemakaian
echo -n 'neverod' | perl -e 'g.print$_=<>,reverse.m.esrever,><=_$tnirp.g'
neveroddoreven
Perl, 26 byte
Termasuk 25 byte kode +1 untuk -p
.
$_.=reverse;m;esrever=._$
Saya tidak berpikir ini valid karena membutuhkan -p
bendera yang saya pikir tidak dapat dengan mudah digabungkan ke dalam isi skrip untuk membuat palindrome yang benar. Cukup banyak panggilan yang sama seperti di atas, kecuali itu bergantung pada fakta yang -p
juga menambahkan di ;
belakang layar (pada Perls baru ...) untuk menutup m//
.
Pemakaian
echo -n 'neverod' | perl -pe ';$_.=reverse;m;esrever=._$;'
neveroddoreven