Lua - Saiten

String ist eine Folge von Zeichen sowie Steuerzeichen wie Formularvorschub. Der String kann mit drei Formularen initialisiert werden, darunter:

  • Zeichen zwischen einfachen Anführungszeichen
  • Zeichen zwischen doppelten Anführungszeichen
  • Zeichen zwischen [[und]]

Ein Beispiel für die obigen drei Formen ist unten gezeigt.

string1 = "Lua"
print("\"String 1 is\"",string1)

string2 = 'Tutorial'
print("String 2 is",string2)

string3 = [["Lua Tutorial"]]
print("String 3 is",string3)

Wenn wir das obige Programm ausführen, erhalten wir die folgende Ausgabe.

"String 1 is"	Lua
String 2 is	Tutorial
String 3 is	"Lua Tutorial"

Escape-Sequenzzeichen werden in Zeichenfolgen verwendet, um die normale Interpretation von Zeichen zu ändern. Um beispielsweise doppelte Anführungszeichen ("") zu drucken, haben wir im obigen Beispiel \ "verwendet. Die Escape-Sequenz und ihre Verwendung sind unten in der Tabelle aufgeführt.

Fluchtabfolge Verwenden
\ein Glocke
\ b Rücktaste
\ f Formfeed
\ n Neue Zeile
\ r Wagenrücklauf
\ t Tab
\ v Vertikale Registerkarte
\\ Backslash
"" Anführungszeichen
\ ' Einzelzitate
\ [ Linke eckige Klammer
\] Rechte eckige Klammer

String-Manipulation

Lua unterstützt String, um Strings zu manipulieren -

Sr.Nr. Methode & Zweck
1

string.upper(argument)

Gibt eine großgeschriebene Darstellung des Arguments zurück.

2

string.lower(argument)

Gibt eine Darstellung des Arguments in Kleinbuchstaben zurück.

3

string.gsub(mainString,findString,replaceString)

Gibt eine Zeichenfolge zurück, indem findString durch replaceString ersetzt wird.

4

string.find(mainString,findString,

optionalStartIndex,optionalEndIndex)

Gibt den Startindex und den Endindex des findString in der Hauptzeichenfolge zurück und nil, falls nicht gefunden.

5

string.reverse(arg)

Gibt eine Zeichenfolge zurück, indem die Zeichen der übergebenen Zeichenfolge umgekehrt werden.

6

string.format(...)

Gibt eine formatierte Zeichenfolge zurück.

7

string.char(arg) and string.byte(arg)

Gibt interne numerische und Zeichendarstellungen des Eingabearguments zurück.

8

string.len(arg)

Gibt eine Länge der übergebenen Zeichenfolge zurück.

9

string.rep(string, n))

Gibt eine Zeichenfolge zurück, indem dieselbe Zeichenfolge n-mal wiederholt wird.

10

..

Somit verkettet der Operator zwei Zeichenfolgen.

Lassen Sie uns nun einige Beispiele betrachten, um genau zu sehen, wie sich diese Funktionen zur Manipulation von Zeichenfolgen verhalten.

Fallmanipulation

Ein Beispielcode zum Bearbeiten der Zeichenfolgen in Groß- und Kleinbuchstaben ist unten angegeben.

string1 = "Lua";

print(string.upper(string1))
print(string.lower(string1))

Wenn wir das obige Programm ausführen, erhalten wir die folgende Ausgabe.

LUA
lua

Ersetzen eines Teilstrings

Ein Beispielcode zum Ersetzen von Vorkommen einer Zeichenfolge durch eine andere ist unten angegeben.

string = "Lua Tutorial"

-- replacing strings
newstring = string.gsub(string,"Tutorial","Language")
print("The new string is "..newstring)

Wenn wir das obige Programm ausführen, erhalten wir die folgende Ausgabe.

The new string is Lua Language

Finden und Umkehren

Ein Beispielcode zum Ermitteln des Index der Teilzeichenfolge und der Umkehrzeichenfolge ist unten angegeben.

string = "Lua Tutorial"

-- replacing strings
print(string.find(string,"Tutorial"))
reversedString = string.reverse(string)
print("The new string is",reversedString)

Wenn wir das obige Programm ausführen, erhalten wir die folgende Ausgabe.

5	12
The new string is	lairotuT auL

Zeichenfolgen formatieren

In unserer Programmierung müssen wir möglicherweise häufig Zeichenfolgen formatiert drucken. Mit der Funktion string.format können Sie die Ausgabe wie unten gezeigt formatieren.

string1 = "Lua"
string2 = "Tutorial"

number1 = 10
number2 = 20

-- Basic string formatting
print(string.format("Basic formatting %s %s",string1,string2))

-- Date formatting
date = 2; month = 1; year = 2014
print(string.format("Date formatting %02d/%02d/%03d", date, month, year))

-- Decimal formatting
print(string.format("%.4f",1/3))

Wenn wir das obige Programm ausführen, erhalten wir die folgende Ausgabe.

Basic formatting Lua Tutorial
Date formatting 02/01/2014
0.3333

Zeichen- und Byte-Darstellungen

Ein Beispielcode für die Zeichen- und Bybedarstellung, der zum Konvertieren der Zeichenfolge von der Zeichenfolge in die interne Darstellung und umgekehrt verwendet wird.

-- Byte conversion

-- First character
print(string.byte("Lua"))

-- Third character
print(string.byte("Lua",3))

-- first character from last
print(string.byte("Lua",-1))

-- Second character
print(string.byte("Lua",2))

-- Second character from last
print(string.byte("Lua",-2))

-- Internal Numeric ASCII Conversion
print(string.char(97))

Wenn wir das obige Programm ausführen, erhalten wir die folgende Ausgabe.

76
97
97
117
117
a

Andere allgemeine Funktionen

Die gängigen Zeichenfolgenmanipulationen umfassen die Verkettung von Zeichenfolgen, das Ermitteln der Länge der Zeichenfolge und manchmal das wiederholte Wiederholen derselben Zeichenfolge. Das Beispiel für diese Operationen ist unten angegeben.

string1 = "Lua"
string2 = "Tutorial"

-- String Concatenations using ..
print("Concatenated string",string1..string2)

-- Length of string
print("Length of string1 is ",string.len(string1))

-- Repeating strings
repeatedString = string.rep(string1,3)
print(repeatedString)

Wenn wir das obige Programm ausführen, erhalten wir die folgende Ausgabe.

Concatenated string	LuaTutorial
Length of string1 is 	3
LuaLuaLua