Rails Insights

Technegau Fformatio Ddrychion yn Ruby

Mae Ruby, fel iaith raglennu, yn cynnig nifer o dechnegau fformatio drychion sy'n gwneud y broses o greu a rheoli testun yn haws ac yn fwy effeithlon. Mae'r technegau hyn yn caniatáu i raglenwyr greu testunau sy'n cynnwys newidynnau, fformatio rhifau, a llawer mwy. Yn yr erthygl hon, byddwn yn archwilio rhai o'r technegau fformatio drychion mwyaf defnyddiol yn Ruby, gan gynnwys y defnydd o ddrychion, y dull 'sprintf', a'r dull 'String#%'. Byddwn hefyd yn rhoi enghreifftiau o sut i'w defnyddio yn eich cod.

1. Fformatio Ddrychion Sylfaenol

Mae fformatio drychion yn Ruby yn caniatáu i chi greu testunau sy'n cynnwys newidynnau. Mae hyn yn ddefnyddiol pan fyddwch am gynnwys gwybodaeth benodol yn eich testun. Mae'r dulliau mwyaf cyffredin ar gyfer fformatio drychion yn Ruby yn cynnwys:

  • Interpolation Ddrychion
  • String#%
  • String#format
  • Kernel#sprintf

1.1 Interpolation Ddrychion

Mae interpolation drychion yn ffordd syml a chynhwysfawr o gynnwys newidynnau yn eich testun. Mae'n cael ei wneud trwy ddefnyddio nodau ' #{ }'. Dyma enghraifft:

name = "Carys"
age = 25
greeting = "Helo, fy enw i yw #{name} ac rwy'n #{age} oed."
puts greeting

Mae'r enghraifft uchod yn creu testun sy'n cynnwys y newidynnau 'name' a 'age'. Mae'r canlyniad yn:

Helo, fy enw i yw Carys ac rwy'n 25 oed.

1.2 Dull String#%

Mae'r dull 'String#%' yn cynnig dull arall o fformatio drychion. Mae'n caniatáu i chi ddefnyddio nodau fformatio, fel %s ar gyfer testun a %d ar gyfer rhifau. Dyma enghraifft:

name = "Carys"
age = 25
greeting = "Helo, fy enw i yw %s ac rwy'n %d oed." % [name, age]
puts greeting

Mae'r canlyniad yn debyg i'r un a gafwyd gyda'r interpolation drychion:

Helo, fy enw i yw Carys ac rwy'n 25 oed.

1.3 Dull String#format

Mae'r dull 'String#format' yn cynnig dull mwy cyffredinol o fformatio drychion. Mae'n gweithio'n debyg i 'String#%', ond mae'n defnyddio nodau fformatio yn y testun. Dyma enghraifft:

name = "Carys"
age = 25
greeting = "Helo, fy enw i yw %s ac rwy'n %d oed." % [name, age]
puts greeting

Mae'r canlyniad yn debyg i'r un a gafwyd gyda'r dulliau eraill:

Helo, fy enw i yw Carys ac rwy'n 25 oed.

1.4 Dull Kernel#sprintf

Mae 'Kernel#sprintf' yn cynnig dull tebyg i 'String#%', ond mae'n dychwelyd y testun fformatiedig yn hytrach na'i argraffu. Dyma enghraifft:

name = "Carys"
age = 25
greeting = sprintf("Helo, fy enw i yw %s ac rwy'n %d oed.", name, age)
puts greeting

Mae'r canlyniad yn debyg i'r un a gafwyd gyda'r dulliau eraill:

Helo, fy enw i yw Carys ac rwy'n 25 oed.

2. Fformatio Rhifau

Mae Ruby hefyd yn cynnig dulliau penodol ar gyfer fformatio rhifau. Mae hyn yn ddefnyddiol pan fyddwch am ddangos rhifau mewn fformat penodol, fel ar gyfer arian neu ganran. Dyma rai technegau:

  • Fformatio arian
  • Fformatio canran
  • Fformatio rhifau gyda phwyntiau degol

2.1 Fformatio Arian

Gallwch ddefnyddio 'sprintf' i fformatio rhifau fel arian. Dyma enghraifft:

amount = 1234.56
formatted_amount = sprintf("£%.2f", amount)
puts formatted_amount

Mae'r canlyniad yn:

£1234.56

2.2 Fformatio Canran

Gallwch hefyd fformatio rhifau fel canranau. Dyma enghraifft:

percentage = 0.1234
formatted_percentage = sprintf("%.2f%%", percentage * 100)
puts formatted_percentage

Mae'r canlyniad yn:

12.34%

2.3 Fformatio Rhifau gyda Phwyntiau Degol

Os ydych am ddangos rhifau gyda phwyntiau degol, gallwch ddefnyddio'r dulliau fformatio. Dyma enghraifft:

number = 3.14159
formatted_number = sprintf("%.2f", number)
puts formatted_number

Mae'r canlyniad yn:

3.14

3. Fformatio Testunau Hir

Pan fyddwch yn gweithio gyda thestunau hir, gall fod yn ddefnyddiol i'w dorri i mewn i linellau. Mae Ruby yn cynnig dulliau i wneud hyn. Dyma rai technegau:

  • String#scan
  • String#split
  • String#lines

3.1 Dull String#scan

Gallwch ddefnyddio 'String#scan' i dorri testunau yn seiliedig ar batrwm. Dyma enghraifft:

text = "Mae Ruby yn iaith raglennu."
words = text.scan(/\w+/)
puts words.inspect

Mae'r canlyniad yn:

["Mae", "Ruby", "yn", "iaith", "raglennu"]

3.2 Dull String#split

Gallwch ddefnyddio 'String#split' i dorri testunau yn seiliedig ar nodau penodol. Dyma enghraifft:

text = "Mae Ruby yn iaith raglennu."
words = text.split(" ")
puts words.inspect

Mae'r canlyniad yn:

["Mae", "Ruby", "yn", "iaith", "raglennu."]

3.3 Dull String#lines

Gallwch ddefnyddio 'String#lines' i dorri testunau yn seiliedig ar linellau. Dyma enghraifft:

text = "Mae Ruby yn iaith raglennu.\nMae'n hawdd ei ddysgu."
lines = text.lines
puts lines.inspect

Mae'r canlyniad yn:

["Mae Ruby yn iaith raglennu.\n", "Mae'n hawdd ei ddysgu."]

4. Casgliad

Mae Ruby yn cynnig nifer o dechnegau fformatio drychion sy'n gwneud y broses o greu a rheoli testun yn haws. O'r interpolation drychion i'r dulliau fformatio penodol ar gyfer rhifau, mae'r technegau hyn yn cynnig dulliau pwerus i raglenwyr. Mae'n bwysig deall y dulliau hyn er mwyn gallu creu cod effeithlon a chreadigol.

Gobeithio bod yr erthygl hon wedi rhoi gwybodaeth ddefnyddiol i chi am fformatio drychion yn Ruby. Peidiwch ag oedi i archwilio'r technegau hyn yn eich prosiectau eich hun!

Published: August 12, 2024

© 2024 RailsInsights. All rights reserved.