Bu benim ilk codegolf sorum, bu yüzden uygun değilse önceden özür dilerim ve herhangi bir geri bildirim hoş geldiniz.
Bu biçimde bir dosya var:
a | rest of first line
b | rest of second line
b | rest of third line
c | rest of fourth line
d | rest of fifth line
d | rest of sixth line
Gerçek içerik, sınırlayıcı gibi değişir. İçeriği sadece metindir. Sınırlayıcı, her satırda yalnızca bir kez görünür. Bu bulmaca için, sınırlayıcıyı değiştirmekten çekinmeyin, örneğin sınırlayıcı olarak "%" kullanın.
Istenilen çıktı:
a | rest of first line
b | rest of second line % rest of third line
c | rest of fourth line
d | rest of fifth line % rest of sixth line
Bunu birleştirmek için hem yakut hem de awk betiklerim var, ancak kısa bir oneliner'e sahip olmanın mümkün olduğundan şüpheleniyorum. yani komut satırındaki borular ve diğer komutlarla birlikte kullanılabilen bir astar. Bunu anlayamıyorum ve kendi komut dosyam sadece komut satırında sıkıştırmak.
En kısa karakterler tercih edilir. Girdi zorunlu olarak sıralanmaz, ancak yalnızca birbirini izleyen satırları eşleşen ilk alanlarla birleştirmekle ilgileniriz. Eşleşen ilk alanlarla sınırsız satır var. Alan 1 herhangi bir şey olabilir, örneğin meyve isimleri, özel isimler, vb.
(MacOS üzerinde çalışıyorum, bu yüzden kişisel olarak en çok mac üzerinde çalışan uygulamalarla ilgileniyorum).
İşte ikinci bir örnek / test. Uyarı "|" sınırlayıcıdır. "|" Den önceki boşluk önemsizdir ve yeniden gönderilmesinin anahtarın bir parçası olarak görülmesi gerekir. Çıktıda sınırlandırılmış olarak "%" kullanıyorum, ancak yine sınırlayıcıyı değiştirmekten çekinmeyin (ancak köşeli parantez kullanmayın).
Giriş:
why|[may express] surprise, reluctance, impatience, annoyance, indignation
whom|[used in] questions, subordination
whom|[possessive] whose
whom|[subjective] who
whoever|[objective] whomever
whoever|[possessive] whosever
who|[possessive] whose
who|[objective] whom
Istenilen çıktı:
why|[may express] surprise, reluctance, impatience, annoyance, indignation
whom|[used in] questions, subordination%[possessive] whose%[subjective] who
whoever|[objective] whomever%[possessive] whosever
who|[possessive] whose%[objective] whom
["A|some text", "B|other text", "A|yet some other text"]
test etmek için istenen bir girdi değil, çünkü için anahtar kelimeler A
listede birbiri ardına değil.