Lua - Senar

String adalah urutan karakter serta karakter kontrol seperti umpan formulir. String dapat diinisialisasi dengan tiga bentuk yang meliputi -

  • Karakter di antara tanda kutip tunggal
  • Karakter di antara tanda kutip ganda
  • Karakter antara [[dan]]

Contoh untuk ketiga formulir di atas ditunjukkan di bawah ini.

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

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

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

Saat kita menjalankan program di atas, kita akan mendapatkan output sebagai berikut.

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

Karakter urutan melarikan diri digunakan dalam string untuk mengubah interpretasi karakter normal. Misalnya, untuk mencetak koma terbalik ganda (""), kami telah menggunakan \ "pada contoh di atas. Urutan pelolosan dan penggunaannya tercantum di bawah ini dalam tabel.

Urutan pelarian Menggunakan
\Sebuah lonceng
\ b Menghapus
\ f Formfeed
\ n Garis baru
\ r Kereta kembali
\ t Tab
\ v Tab vertikal
\\ Garis miring terbalik
\ " Tanda kutip ganda
\ ' Kutipan tunggal
\ [ Tanda kurung siku kiri
\] Braket persegi kanan

Manipulasi String

Lua mendukung string untuk memanipulasi string -

Sr.No. Metode & Tujuan
1

string.upper(argument)

Mengembalikan representasi yang dikapitalisasi dari argumen.

2

string.lower(argument)

Mengembalikan representasi huruf kecil dari argumen.

3

string.gsub(mainString,findString,replaceString)

Mengembalikan string dengan mengganti kemunculan findString dengan replaceString.

4

string.find(mainString,findString,

optionalStartIndex,optionalEndIndex)

Mengembalikan indeks awal dan indeks akhir dari findString dalam string utama dan nil jika tidak ditemukan.

5

string.reverse(arg)

Mengembalikan string dengan membalik karakter dari string yang dilewati.

6

string.format(...)

Mengembalikan string yang diformat.

7

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

Mengembalikan representasi numerik dan karakter internal dari argumen input.

8

string.len(arg)

Mengembalikan panjang string yang dilewati.

9

string.rep(string, n))

Mengembalikan sebuah string dengan mengulangi string yang sama sebanyak n kali.

10

..

Jadi operator menggabungkan dua string.

Sekarang, mari selami beberapa contoh untuk melihat dengan tepat bagaimana fungsi manipulasi string ini berperilaku.

Manipulasi Kasus

Kode contoh untuk memanipulasi string menjadi huruf besar dan kecil diberikan di bawah ini.

string1 = "Lua";

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

Saat kita menjalankan program di atas, kita akan mendapatkan output sebagai berikut.

LUA
lua

Mengganti Substring

Kode contoh untuk mengganti kemunculan satu string dengan yang lain diberikan di bawah ini.

string = "Lua Tutorial"

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

Saat kita menjalankan program di atas, kita akan mendapatkan output sebagai berikut.

The new string is Lua Language

Menemukan dan Membalik

Kode contoh untuk menemukan indeks substring dan membalikkan string diberikan di bawah ini.

string = "Lua Tutorial"

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

Saat kita menjalankan program di atas, kita akan mendapatkan output sebagai berikut.

5	12
The new string is	lairotuT auL

Memformat String

Sering kali dalam pemrograman kita, kita mungkin perlu mencetak string dalam format yang sudah ditentukan. Anda dapat menggunakan fungsi string.format untuk memformat keluaran seperti yang ditunjukkan di bawah ini.

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))

Saat kita menjalankan program di atas, kita akan mendapatkan output sebagai berikut.

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

Representasi Karakter dan Byte

Kode contoh untuk representasi karakter dan byte, yang digunakan untuk mengonversi string dari string ke representasi internal dan sebaliknya.

-- 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))

Saat kita menjalankan program di atas, kita akan mendapatkan output sebagai berikut.

76
97
97
117
117
a

Fungsi Umum Lainnya

Manipulasi string yang umum termasuk penggabungan string, mencari panjang string dan terkadang mengulang string yang sama beberapa kali. Contoh untuk operasi ini diberikan di bawah ini.

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)

Saat kita menjalankan program di atas, kita akan mendapatkan output sebagai berikut.

Concatenated string	LuaTutorial
Length of string1 is 	3
LuaLuaLua