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

  • 1881 Animation

    1881 Animati

    5 EKİM 2013
  • Adam Washington

    Adam Washing

    12 Mayıs 2006
  • Maschine Tutorials

    Maschine Tut

    15 ŞUBAT 2011