I denne guiden vil vi diskutere hvordan du interpolerer strenger i Ruby -programmeringsspråket.
Ved hjelp av + operatør
Den enkleste måten å interpolere verdier i en bokstavelig streng er å bruke tilleggsoperatøren. Tenk på eksemplet som er vist nedenfor:
name = "Alice"I eksemplet over erklærer vi en variabel som heter Name. Det holder verdien “Alice”. Ved hjelp av tilleggsoperatøren interpolerer vi den til en strengverdi.
Ruby -tolken vil hente verdien som er referert med variabelnavnet og bruke den som den faktiske verdien. Den resulterende utgangen er som vist:
$ ruby interpolasjon.RBTilleggsoperatøren inneholder en ulempe når du interpolerer variabler i en streng. Det fungerer bare med strengsobjekter.
Ta eksemplet nedenfor:
Alder = 10Hvis du prøver å utføre en slik operasjon, vil Ruby returnere en typeerror
'+': Ingen implisitt konvertering av nil inn i Streng (typeerror)
En måte å løse et slikt problem er å konvertere variabelen til en streng ved hjelp av TO_S -metoden.
For eksempel:
Alder = 10Nå kan vi injisere heltallsvariabelen i strengen ved å støpe den som en streng.
Bruker << Operator
Venstre skiftoperatør fungerer på samme måte som tilleggsoperatøren. Den injiserer den passerte variabelen i en streng bokstavelig.
Eksempel:
lang = "Ruby"I likhet med tilleggsoperatøren, må du konvertere variabelen til en streng for å forhindre typeerror.
Ved hjelp av #
De to metodene vi diskuterte ovenfor har en enkelt ulempe; Det blir komplisert å utføre et uttrykk i en streng bokstavelig.
Ta en titt på eksemplet nedenfor:
Radius = 7.43Ovennevnte operasjon er ikke mulig ved bruk av metodene vi diskuterte ovenfor.
For å løse dette, kan vi bruke ekspresjonssubstitusjonsoperatøren i Ruby:
Syntaksen er som:
#variabelVi legger variabelen eller uttrykket inne i paret krøllete seler. Ruby vil evaluere uttrykket og interpolere til strengen.
Tenk på det forrige eksemplet ved å bruke interpolasjonsoperatøren.
Radius = 7.43Det er mye bedre. Ved å bruke ovennevnte notasjon kan vi injisere en enkelt variabel og gyldig rubinuttrykk i en streng.
Nedenfor er den resulterende utgangen:
$ Ruby Substring.RBI dette tilfellet trenger vi ikke å utføre uttrykket, konvertere det til en streng og deretter interpolere det til strengen.
Ved hjelp av denne metoden vil Ruby ta seg av alt.
Konklusjon
Denne guiden har illustrert hvordan man jobber med streng interpolasjon i rubinspråket ved å bruke funksjoner som tilleggsoperatøren, venstre skift og ekspresjonssubstitusjonsoperatøren.