SORU
9 Mayıs 2012, ÇARŞAMBA


Sıyırma yeni satır olmadan Ruby birden fazla satır uzun dizeleri ayrılıyor

Biz son zamanlarda ruby tarzı bir rehber işimde karar verdi. Ferman bir çizgi yok 80 karakterden daha geniş olmasıdır. Başka bir deyişle bir Rails projesi, sık sık dizeleri o biraz daha uzun, yani "Kullanıcı X yollamak istediğini sana bir mesaj hakkında bir Şey Y" değil her zaman uyum içinde 80 karakter stili sınırı.

Uzun bir dize span birden fazla satır için üç yolu vardır:

  • HEREDOC
  • {} %S
  • Gerçek dize birleştirme.

Ancak, bütün bu durumlarda hangi aptal gibi fazla hesaplama döngüleri, alarak bitirmek. Dize birleştirme açıkçası, ama HEREDOC ve %S için yeni satır, bir şey) gibi kaldýrmak için var .(/\n$/, "). gsub

Saf sözdizimi bir şekilde tek bir satırda bütün dize olmasıyla eş değer olduğunu Bunu yapmak için var mı? Amaç, belli ki, benim kod biraz daha okunaklı olmasını istiyorum çünkü herhangi bir ekstra döngüleri geçirmek için değil. (Evet, Bunu takas bir sürü yapmak zorunda olduğunuzu biliyorum...ama dize uzunluğu için, bu sadece aptalca görünüyor.)

Güncelleme: Ters girinti kaybedersiniz çünkü, gerçekten stil/okunabilirliği etkileyen istediğim şey, tam olarak değil.

Örnek:

if foo
  string = "this is a \  
string that spans lines"  
end

Biraz yukarıdaki okunası buluyorum.

CEVAP
9 Mayıs 2012, ÇARŞAMBA


Belki bu sizin için aradığınız şey nedir?

string = "line #1"\
         "line #2"\
         "line #3"

p string # => "line #1line #2line #3"

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • echifitness

    echifitness

    9 Kasım 2008
  • PCDIY

    PCDIY

    16 AĞUSTOS 2013
  • Video Copilot

    Video Copilo

    21 EYLÜL 2006