Kecilkan setiap kata dalam serangkaian string menjadi satu huruf yang digambarkan dengan spasi atau tanda baca.
Contoh
I'm a little teapot, short and stout. Here is my handle, here is my spout. When I get all steamed up - hear me shout! Tip me over and pour me out.
menjadi
I' a l t, s a s. H i m h, h i m s. W I g a s u - h m s! T m o a p m o.
Edit - jika ada banyak ruang, pertahankan hanya satu ruang. Semua tanda baca harus dilestarikan, saya merindukan tanda kutip. Ya ini kode golf :-).
+
dll.)O'Leary-Clarence-DeVois
Akan seperti apa jadinyaO'--
?Jawaban:
CJam, 13 byte
Bekerja jika saya hanya dapat mempertimbangkan karakter tanda baca yang umum, dan hasilnya dapat memiliki spasi tambahan. (Terima kasih kepada Dennis.)
Pertanyaan ini membutuhkan lebih banyak klarifikasi ...
CJam,
1716 byteCobalah online .
Penjelasan
sumber
r
mendorong string kosong pada EOF, jadi ini juga berfungsi:r{(\eu_elf&Sr}h;
;
tidak masuk akal.&
. Juga, tergantung pada apa yang secara tepat dianggap sebagai tanda baca,'@,
akan menjadi alternatif yang lebih pendekeu_el
.Pyth, 14 byte
Cobalah online: Peragaan
Penjelasan:
sumber
Python 3.4,
94928277 byteSaya baru mengenal golf kode, tetapi saya pikir saya akan mencobanya! Yang ini bukan pemenang, tapi itu menyenangkan.
Ini hanya membagi string, mengambil karakter pertama dari setiap kata bersama dengan tanda baca apa pun di seluruh kata.
* diedit dengan perubahan oleh FryAmTheEggman, DLosc
sumber
print(*[w[0]+''.join([c for c in w[1:]if 1-c.isalpha()])for w in input().split()])
join
dapat mengambil generator telanjang sebagai argumen. Juga, inilah cara string mengiris dari melakukan "jika tidak isalpha" logika:c[c.isalpha():]for c in w
. Harus membuat Anda turun ke 77 byte. : ^)Jelly , 14 byte
Cobalah online!
Solusi dilakukan dengan Mr. Xcoder dan caird coinheringaahing di ruang obrolan Jelly Hypertraining .
Alternatif 14 byte: Cobalah online!
sumber
sed (39 karakter)
Hanya beberapa ekspresi reguler:
sumber
Lua - 126 karakter
Lua tidak banyak bahasa kode golf, tapi saya mencobanya:
Ini mengasumsikan bahwa itu
c
adalah string.Di sini dibersihkan untuk dibaca:
Anda dapat mengujinya di sini (salin dan tempel. Untuk yang pertama Anda juga harus melakukannya
c = "I'm a little ...
.) Untuk beberapa alasan demo online Lua tidak akan membiarkan Anda memasukkan variabel menggunakanio.read
...sumber
PowerShell, 56 byte
sumber
Javascript ( ES6 )
7268 byteBerkomentar:
sumber
C99 -
170169 byteTidak Disatukan:
Pemakaian:
Keluaran:
sumber
Java 8, 87 byte
Penjelasan:
Coba di sini.
Penjelasan regex:
Jadi pada dasarnya menghapus semua huruf kecil dari suatu String, kecuali yang pertama.
sumber
Perl 5 , 34 byte
33 byte kode +1 untuk
-p
.Cobalah online!
sumber
R,
4645 byteIni membaca garis dari STDIN dan mencetak ke STDOUT. Ini menggunakan ekspresi reguler untuk menghapus semua karakter setelah huruf pertama diikuti oleh sejumlah tanda baca.
Penjelasan + tidak dikumpulkan:
Contoh:
sumber
05AB1E , 13 byte
Cobalah online!
Penjelasan:
sumber
VBA (Excel),
141133 BytesMenggunakan VBA Immediate Window, [A1] sebagai String yang Dimasukkan.
sumber
Perl 6 , 15 byte
Cobalah online!
sumber