Rask karakterer og strenger (med eksempler)

I denne opplæringen lærer du om bruk av tegn og strenger i Swift. Du lærer også forskjellige operasjoner som kan utføres på strenger og tegn.

Hva er en karakter?

Et tegn er et enkelt symbol (bokstav, tall osv.). Karakter i rask er av Charactertype og er erklært som:

 la noenCharacter: Character

Hvordan erklære og tildele et tegn i Swift?

Du kan tilordne verdi i tegntype som String ved bruk av doble anførselstegn, " "men den skal bare inneholde et enkelt tegn inne i anførselstegnene " ".

Hvis du trenger å inkludere mer enn ett tegn, må du definere det i Stringstedet for Character.

Eksempel 1: Deklarere og tildele et tegn

 let someCharacter:Character = “H” let specialCharacter:Character = “@” print(someCharacter) print(specialCharacter)

Når du kjører programmet, vil utdataene være:

 H @

Eksempel 2: Tilordne mer enn ett tegn (Fungerer ikke)

Men hvis du prøver å tilordne to symboler i karakteren som

 /* This will give an error Changing the type to String will fix it. */ let failableCharacter:Character = "H@" print(failableCharacter) 

Når du prøver å kjøre ovennevnte kode, får du en feil som:

 Kan ikke konvertere verdien av typen String til Character.

Opprette karakter ved hjelp av unicode og escape-sekvens

Du kan også lage spesielle typer tegn for.eg emoji ved hjelp av unicodes. Du kan opprette en unicode ved hjelp av escape-sekvensen u (n) (unicode-kodepunkt, n er i heksadesimal).

Eksempel 3: Opprette et unicode-tegn

 let heartShape:Character = "u(2665)" print(heartShape) 

Når du kjører programmet, vil utdataene være:

I eksemplet ovenfor ble et hjerteformt tegn opprettet fra kode U+2665. Selv om det u(2665)er inkludert i dobbelt anførselstegn, behandler ikke kompilatoren det som en Stringfordi vi brukte escape-sekvens u(n). En rømningssekvens representerer ikke seg selv når den er inkludert i bokstavelig.

Hva er en streng?

En streng er ganske enkelt en samling tegn. Strenger i Swift er av Stringtypen og erklært som:

 la noenString: String

Hvordan erklære og tilordne en streng i Swift?

Du kan tilordne verdi i strengtype ved hjelp av strenglitteraler. En streng bokstavelig er en samling av tegn omgitt av doble anførselstegn " ".

Eksempel 4: Deklarere og tildele en streng

 let someString:String = "Hello, world!" let someMessage = "I love Swift." print(someString) print(someMessage)

Når du kjører programmet, vil utdataene være:

Hei Verden! Jeg elsker Swift.

Her brukes både "Hello, world!"og "I love Swift."er strenglitteraler for å lage strengvariabler henholdsvis someString og someMessage.

Operasjoner på en streng

Det er noen innebygde funksjoner og eiendom i String for å håndtere de mest brukte operasjonene. For eksempel: for å slå sammen strenger, endre det til store eller store bokstaver. La oss utforske noen ofte brukte operasjoner nedenfor:

Strengsammenligning

Du kan ganske enkelt sjekke om to strenger er like eller ikke bruker sammenligningsoperator (==). Operatøren returnerer retur truehvis begge strengene er like, ellers returnerer den false.

Eksempel 5: Sammenligning av strenger i Swift

 let someString = "Hello, world!" let someMessage = "I love Swift." let someAnotherMessage = "Hello, world!" print(someString == someMessage) print(someString == someAnotherMessage) 

Når du kjører programmet, vil utdataene være:

 usann sannhet

Strengsammenkobling

Two different strings value can be added together with the addition operator (+) or using compound assignment operator (+=). You can also append a character/string in a string using append method.

Example 6: String concatenation in Swift

 let helloStr = "Hello, " let worldStr = "World" var result = helloStr + worldStr print(result) result.append("!") print(result) 

When you run the program, the output will be:

 Hello, World Hello, World!

In the above program we created a string result by appending helloStr and worldStr using + operator. So, print(result) outputs Hello, World in the screen.

You can also append any character or string using append method. result.append("!") appends a ! character at the end of the string. So, print(result) outputs Hello, World! on the screen.

String concatenation using advanced assignment operator

We can also use advanced assignment operator (+=) to append string.

Example 7: String concatenation using += operator

 var helloStr = "Hello, " let worldStr = "World!" helloStr += worldStr print(helloStr) 

When you run the program, the output will be:

 Hello, World!

Notice the use of var instead of let in helloStr. If you have defined helloStr a constant using let, you cannot change it later using the += operator and eventually get an error. So, you have to define helloStr a variable.

String Interpolation

It is a simple process of evaluating a string literal that consists of variables, constants etc. Imagine you have player’s name and score stored in two constants as:

 let playerName = "Jack" let playerScore = 99

Now you need to display a message to the player as "Congratulations Jack!. Your highest score is 99." Here, you need to a way to use the values of the constants in a single string.

This can be achieved using string concatenation as:

 let congratsMessage = "Congratulations " + playerName + "!. Your highest score is " + playerScore + "." print(congratsMessage)

However, you can see this can get messy pretty soon. You have to take care of the spaces after the word Congratulations, is. Also, if you have to use more than two constants/variables, it will get unreadable.

There’s an easier way to display the message using string interpolation. Interpolation is the process to include value of a variable or constant inside string literal.

The variable or constant that should insert into the string literal is wrapped in a pair of parentheses ( ), prefixed by a backslash ().

Example 8: String interpolation in Swift

 let playerName = "Jack" let playerScore = 99 let congratsMessage = "Congratulations (playerName)!. Your highest score is (playerScore)." print(congratsMessage) 

When you run the program, the output will be:

 Congratulations Jack!. Your highest score is 99.

Some helpful built-in String functions & variables:

1. isEmpty

This function determines if a string is empty or not. It returns true if the string is empty otherwise, it returns false.

Example 9: isEmpty

 var emptyString = "" print(emptyString.isEmpty) 

When you run the program, the output will be:

 true

2. capitalized

This property is used to capitalize every word in a string.

Example 10: capitalized

 let someString = "hello, world!" print(someString.capitalized) 

When you run the program, the output will be:

 Hello, World!

3. uppercased and lowercased

The uppercased function converts string to uppercase letter and the lowercased function converts string to lowercase letter.

Example 11: uppercased() and lowercased()

 let someString = "Hello, World!" print(someString.uppercased()) print(someString.lowercased()) 

When you run the program, the output will be:

 HELLO, WORLD! hello, world!

4. Length/count

This property is used to count the total number of characters in a string.

Example 12: count

 let someString = "Hello, World!" print(someString.count) 

When you run the program, the output will be:

 13

5. hasPrefix

Denne funksjonen avgjør om en streng starter med bestemte tegn eller ikke, og returnerer en boolsk verdi. Den returnerer truehvis strengprefikset samsvarer med den oppgitte verdien ellers returnerer false.

Eksempel 13: hasPrefix ()

 let someString = "Hello, World!" print(someString.hasPrefix("Hell")) print(someString.hasPrefix("hell")) 

Når du kjører programmet, vil utdataene være:

 sant usant 

6. hasSuffix

Denne funksjonen avgjør om en streng slutter med visse tegn eller ikke, og returnerer en boolsk verdi. Den returnerer truehvis streng-suffikset samsvarer med den oppgitte verdien ellers returnerer false.

Eksempel 14: hasSuffix ()

 print(someString.hasSuffix("rld!")) print(someString.hasSuffix("Rld!")) 

Når du kjører programmet, vil utdataene være:

 sant usant 

Interessante artikler...