# string

- **İngilizce aslı:** https://wiki.facepunch.com/gmod/string
- **Çeviri tarihi:** 2025-09-08

String *türü* bir karakter dizisidir.

String *kütüphanesi*, string'lerin manipülasyonu için fonksiyonlar sağlayan standart bir Lua kütüphanesidir.[[1]](https://www.lua.org/pil/20.html)

Garry's Mod'da bu kütüphaneye eklenmiş birçok ekstra kullanışlı fonksiyon ve özellik bulunmaktadır.
En önemlisi, tüm string'ler bu kütüphaneye string metatable index fonksiyonu aracılığıyla erişir.[[2]](https://github.com/Facepunch/garrysmod/blob/master/garrysmod/lua/includes/extensions/string.lua#L311-L322)

Bu, tüm string'lerin tablo nesneleri gibi ve string kütüphanesinin de onun [Meta Tablosu](https://gmod.tr/wiki/Meta_Tables) gibi ele alındığı anlamına gelir.

```lua
local x = "Kittens"
function string.Foobar(self) return self:Right(4) end

string.Right(x,4) == x:Right(4) == x:Foobar() == ("Kittens"):Right(4) == x[-4]..x[-3]..x[-2]..x[-1]
```

Ancak string *metatable*'ı farklı bir şeydir ve ona erişmek için `getmetatable("")` kullanmalısınız.

Buradaki fark, string'leri birleştirmek için (+) yerine (..) kullanmak gibi [Metamethod](https://gmod.tr/wiki/Metamethods)'larla ilgilidir.

> **UYARI:** Birleştirme için `+` operatörünü kullanmak, string'leri sayı olarak toplamak için kullanılan lua metamethod'unu bozar (Örnek: `"10" + "1"`, `11` (sayı) döndürür) ve bu 400 kat DAHA YAVAŞTIR!

```lua
local stringmeta = getmetatable("")
function stringmeta.__add(str,x) return str..x end -- Bu çalışacaktır
function string.__add(str,x) return str..x end -- Ama bu çalışmayacaktır.

print("Kittens" + " And " + "Puppies")
```

Daha fazla bilgi için [Meta Tabloları](https://gmod.tr/wiki/Meta_Tables) ve [Metamethods](https://gmod.tr/wiki/Metamethods) sayfalarına bakın.

> **UYARI:** Ne yaptığınızı bilmiyorsanız string *metatable*'ında değişiklik yapmak iyi bir fikir değildir. Bunun yerine string *kütüphanesini* kullanın.

Bu kategori, string *kütüphanesinde* bulunan fonksiyonları listeler.

## Metotlar

[vararg](https://gmod.tr/wiki/vararg) string.[byte](https://gmod.tr/wiki/string.byte)( [string](https://gmod.tr/wiki/string) string, [number](https://gmod.tr/wiki/number) startPos = 1, [number](https://gmod.tr/wiki/number) endPos = startPos )

Verilen string'in karakterlerini sayısal ASCII gösterimleriyle döndürür. Dilim uzunluğu 8000 karakterden büyükse bu fonksiyon bir hata fırlatır.

[string](https://gmod.tr/wiki/string) string.[CardinalToOrdinal](https://gmod.tr/wiki/string.CardinalToOrdinal)( [number](https://gmod.tr/wiki/number) input )

Bir kardinal (111) sayıyı, sıralı/ardışık varyasyonuna (111.) dönüştürür. Sadece soneki döndüren bir fonksiyon için ayrıca STNDRD'ye bakın.

[string](https://gmod.tr/wiki/string) string.[char](https://gmod.tr/wiki/string.char)( ... )

Verilen sayısal baytları alır ve bunları bir string'e dönüştürür.

[string](https://gmod.tr/wiki/string) string.[Comma](https://gmod.tr/wiki/string.Comma)( [number](https://gmod.tr/wiki/number) value, [string](https://gmod.tr/wiki/string) separator = "," )

Verilen bir sayının her üç basamağına virgül ekler.

[string](https://gmod.tr/wiki/string) string.[dump](https://gmod.tr/wiki/string.dump)( [function](https://gmod.tr/wiki/function) func, [boolean](https://gmod.tr/wiki/boolean) stripDebugInfo = false )

Verilen fonksiyonun ikili (binary) bytecode'unu döndürür. Bu, C/C++ ile oluşturulmuş fonksiyonlarla çalışmaz. Eğer öyleyse bir hata fırlatılır.

[boolean](https://gmod.tr/wiki/boolean) string.[EndsWith](https://gmod.tr/wiki/string.EndsWith)( [string](https://gmod.tr/wiki/string) str, [string](https://gmod.tr/wiki/string) end )

İkinci olarak verilen string'in, birincisinin sonuyla eşleşip eşleşmediğini döndürür.

[table](https://gmod.tr/wiki/table) string.[Explode](https://gmod.tr/wiki/string.Explode)( [string](https://gmod.tr/wiki/string) separator, [string](https://gmod.tr/wiki/string) str, [boolean](https://gmod.tr/wiki/boolean) withpattern = false )

Verilen ayırıcıyı bulduğu her yerde bir string'i böler. `string.Split` fonksiyonu, desen kullanımını desteklememesi dışında bu fonksiyonun bir takma adıdır (alias). Bu fonksiyonun ters işlemi için `string.Implode`'a bakın.

[number](https://gmod.tr/wiki/number), [number](https://gmod.tr/wiki/number), [string](https://gmod.tr/wiki/string) string.[find](https://gmod.tr/wiki/string.find)( [string](https://gmod.tr/wiki/string) haystack, [string](https://gmod.tr/wiki/string) needle, [number](https://gmod.tr/wiki/number) startPos = 1, [boolean](https://gmod.tr/wiki/boolean) noPatterns = false )

Belirtilen alt string'i bir string içinde bulmaya çalışır. Bu fonksiyon varsayılan olarak Lua Desenlerini (Patterns) kullanır.

[string](https://gmod.tr/wiki/string) string.[format](https://gmod.tr/wiki/string.format)( [string](https://gmod.tr/wiki/string) format, ... )

Belirtilen değerleri verilen string'e formatlar.

[string](https://gmod.tr/wiki/string) string.[FormattedTime](https://gmod.tr/wiki/string.FormattedTime)( [number](https://gmod.tr/wiki/number) float, [string](https://gmod.tr/wiki/string) format = nil )

Zamanı formatlanmış bir string olarak veya format verilmemişse bir tablo olarak döndürür.

[string](https://gmod.tr/wiki/string) string.[FromColor](https://gmod.tr/wiki/string.FromColor)( [table](https://gmod.tr/wiki/table) color )

Bir Color değişkeninden bir string oluşturur.

[string](https://gmod.tr/wiki/string) string.[GetChar](https://gmod.tr/wiki/string.GetChar)( [string](https://gmod.tr/wiki/string) str, [number](https://gmod.tr/wiki/number) index )

Bunu kullanmamanızı tavsiye ederiz. Gelecekteki bir güncellemede değiştirilebilir veya kaldırılabilir. `string.sub(str, index, index)` veya `str[index]` kullanın. Sağlanan string'deki belirtilen indeksten karakter değerini döndürür.

[string](https://gmod.tr/wiki/string) string.[GetExtensionFromFilename](https://gmod.tr/wiki/string.GetExtensionFromFilename)( [string](https://gmod.tr/wiki/string) path )

Dosyanın uzantısını döndürür.

[string](https://gmod.tr/wiki/string) string.[GetFileFromFilename](https://gmod.tr/wiki/string.GetFileFromFilename)( [string](https://gmod.tr/wiki/string) path )

Dosya adını ve uzantısını döndürür.

[string](https://gmod.tr/wiki/string) string.[GetPathFromFilename](https://gmod.tr/wiki/string.GetPathFromFilename)( [string](https://gmod.tr/wiki/string) path )

Bir dosya yolundan yalnızca yolu döndürür.

[function](https://gmod.tr/wiki/function) string.[gfind](https://gmod.tr/wiki/string.gfind)( [string](https://gmod.tr/wiki/string) data, [string](https://gmod.tr/wiki/string) pattern )

Bunu kullanmamanızı tavsiye ederiz. Gelecekteki bir güncellemede değiştirilebilir veya kaldırılabilir. Bu fonksiyon, GMod'un şu anda kullandığından daha yeni Lua sürümlerinde kaldırılmıştır. Bunun yerine `string.gmatch` kullanın. Desenin her tam eşleşmesi için çağrılan bir yineleyici (iterator) fonksiyonu döndürür, tüm alt eşleşmeler döngüye geçirilir.

[function](https://gmod.tr/wiki/function) string.[gmatch](https://gmod.tr/wiki/string.gmatch)( [string](https://gmod.tr/wiki/string) data, [string](https://gmod.tr/wiki/string) pattern )

Desenleri (Patterns) kullanarak, yakalama grupları tanımlanmamışsa tek bir değer veya herhangi bir yakalama grubu eşleşmesini döndürecek bir yineleyici (iterator) döndürür.

[string](https://gmod.tr/wiki/string), [number](https://gmod.tr/wiki/number) string.[gsub](https://gmod.tr/wiki/string.gsub)( [string](https://gmod.tr/wiki/string) string, [string](https://gmod.tr/wiki/string) pattern, [string](https://gmod.tr/wiki/string) replacement, [number](https://gmod.tr/wiki/number) maxReplaces = nil )

Bu fonksiyonun ana amacı, Desenleri (Patterns) kullanarak bir string'deki belirli karakter dizilerini değiştirmektir.

[string](https://gmod.tr/wiki/string) string.[Implode](https://gmod.tr/wiki/string.Implode)( [string](https://gmod.tr/wiki/string) separator = "", [table](https://gmod.tr/wiki/table) pieces )

Bunu kullanmamanızı tavsiye ederiz. Gelecekteki bir güncellemede değiştirilebilir veya kaldırılabilir. Gerçekten sadece `table.concat` kullanmalısınız. Bir tablonun değerlerini birleştirerek bir string oluşturur. Bu, `string.Explode`'un tersidir ve daha az özelliğe sahip olması dışında işlevsel olarak `table.concat` ile aynıdır.

[string](https://gmod.tr/wiki/string) string.[Interpolate](https://gmod.tr/wiki/string.Interpolate)( [string](https://gmod.tr/wiki/string) str, [table](https://gmod.tr/wiki/table) lookuptable )

Verilen bir string'i, verilen tablo ile interpole eder. Bu, yerelleştirilmiş string'leri formatlamak için kullanışlıdır.

[string](https://gmod.tr/wiki/string) string.[JavascriptSafe](https://gmod.tr/wiki/string.JavascriptSafe)( [string](https://gmod.tr/wiki/string) str )

Bir string'deki JavaScript için özel karakterlerden kaçar (escapes), böylece string'in JavaScript string'lerine dahil edilmesi için güvenli hale getirir.

[string](https://gmod.tr/wiki/string) string.[Left](https://gmod.tr/wiki/string.Left)( [string](https://gmod.tr/wiki/string) str, [number](https://gmod.tr/wiki/number) num )

Bu string'in belirtilen konumunun solundaki her şeyi döndürür.

[number](https://gmod.tr/wiki/number) string.[len](https://gmod.tr/wiki/string.len)( [string](https://gmod.tr/wiki/string) str )

String'deki karakter sayısını (uzunluk) sayar. Bu, uzunluk operatörünü (#) kullanmaya eşdeğerdir.

[string](https://gmod.tr/wiki/string) string.[lower](https://gmod.tr/wiki/string.lower)( [string](https://gmod.tr/wiki/string) str )

Bir string'deki büyük harfleri küçük harflere çevirir. Bu fonksiyon, İngilizce olmayan özel UTF-8 karakterlerinde çalışmaz.

[vararg](https://gmod.tr/wiki/vararg) string.[match](https://gmod.tr/wiki/string.match)( [string](https://gmod.tr/wiki/string) string, [string](https://gmod.tr/wiki/string) pattern, [number](https://gmod.tr/wiki/number) startPosition = 1 )

Bir string'de bir Desen (Pattern) bulur.

[string](https://gmod.tr/wiki/string) string.[NiceName](https://gmod.tr/wiki/string.NiceName)( [string](https://gmod.tr/wiki/string) text )

"string_gibiBu" şeklindeki bir metni daha insan dostu "String Gibi Bu" şekline dönüştürür. Bu, flex ve bodygroup isimlerini daha dostane bir formata dönüştürmek için Faceposer ve diğer kodlar tarafından dahili olarak kullanılır.

[string](https://gmod.tr/wiki/string) string.[NiceSize](https://gmod.tr/wiki/string.NiceSize)( [number](https://gmod.tr/wiki/number) bytes )

Dijital bir dosya boyutunu insanlar tarafından okunabilir bir metne dönüştürür.

[string](https://gmod.tr/wiki/string) string.[NiceTime](https://gmod.tr/wiki/string.NiceTime)( [number](https://gmod.tr/wiki/number) num )

Verilen sayıyı (saniye cinsinden) mümkün olan en yüksek zaman birimine formatlar.

[string](https://gmod.tr/wiki/string) string.[PatternSafe](https://gmod.tr/wiki/string.PatternSafe)( [string](https://gmod.tr/wiki/string) str )

Bir string içindeki tüm özel karakterlerden kaçar (escapes), böylece string'i bir Lua desenine dahil etmek için güvenli hale getirir.

[string](https://gmod.tr/wiki/string) string.[rep](https://gmod.tr/wiki/string.rep)( [string](https://gmod.tr/wiki/string) str, [number](https://gmod.tr/wiki/number) repetitions, [string](https://gmod.tr/wiki/string) separator = "" )

Bir string'i, isteğe bağlı bir ayırıcı ile, belirtilen sayıda tekrar eder.

[string](https://gmod.tr/wiki/string) string.[Replace](https://gmod.tr/wiki/string.Replace)( [string](https://gmod.tr/wiki/string) str, [string](https://gmod.tr/wiki/string) find, [string](https://gmod.tr/wiki/string) replace )

Verilen ikinci string'in tüm tekrarlarını değiştirir.

[string](https://gmod.tr/wiki/string) string.[reverse](https://gmod.tr/wiki/string.reverse)( [string](https://gmod.tr/wiki/string) str )

Bir string'i tersine çevirir.

[string](https://gmod.tr/wiki/string) string.[Right](https://gmod.tr/wiki/string.Right)( [string](https://gmod.tr/wiki/string) str, [number](https://gmod.tr/wiki/number) num )

String'in son n-inci karakterlerini döndürür.

[string](https://gmod.tr/wiki/string) string.[SetChar](https://gmod.tr/wiki/string.SetChar)( [string](https://gmod.tr/wiki/string) InputString, [number](https://gmod.tr/wiki/number) Index, [string](https://gmod.tr/wiki/string) ReplacementChar )

String'in belirli bir indeksindeki karakteri ayarlar.

[table](https://gmod.tr/wiki/table) string.[Split](https://gmod.tr/wiki/string.Split)( [string](https://gmod.tr/wiki/string) Inputstring, [string](https://gmod.tr/wiki/string) Separator )

String'i ikinci argümanla ayrılmış bir string tablosuna böler. Bu, `string.Explode`'un bir takma adıdır (alias), ancak argümanları ters çevrilmiştir.

[boolean](https://gmod.tr/wiki/boolean) string.[StartsWith](https://gmod.tr/wiki/string.StartsWith)( [string](https://gmod.tr/wiki/string) inputStr, [string](https://gmod.tr/wiki/string) start )

İlk string'in ikinciyle başlayıp başlamadığını döndürür.

[boolean](https://gmod.tr/wiki/boolean) string.[StartWith](https://gmod.tr/wiki/string.StartWith)( [string](https://gmod.tr/wiki/string) inputStr, [string](https://gmod.tr/wiki/string) start )

Bunu kullanmamanızı tavsiye ederiz. Gelecekteki bir güncellemede değiştirilebilir veya kaldırılabilir. `string.StartsWith` kullanın. İlk string'in ikinciyle başlayıp başlamadığını döndürür. Bu, `string.StartsWith`'ın bir takma adıdır (alias).

[string](https://gmod.tr/wiki/string) string.[StripExtension](https://gmod.tr/wiki/string.StripExtension)( [string](https://gmod.tr/wiki/string) path )

Bir yolun uzantısını kaldırır.

[string](https://gmod.tr/wiki/string) string.[sub](https://gmod.tr/wiki/string.sub)( [string](https://gmod.tr/wiki/string) string, [number](https://gmod.tr/wiki/number) StartPos, [number](https://gmod.tr/wiki/number) EndPos = nil )

String'in StartPos konumundaki karakterden başlayarak (dahil) ve isteğe bağlı olarak EndPos konumundaki karakterde biten (bu da dahil) bir alt string döndürür. Eğer EndPos verilmezse, string'in geri kalanı döndürülür.

[table](https://gmod.tr/wiki/table) string.[ToColor](https://gmod.tr/wiki/string.ToColor)( [string](https://gmod.tr/wiki/string) Inputstring )

Bir string'den bir Color türü alır.

[string](https://gmod.tr/wiki/string) string.[ToMinutesSeconds](https://gmod.tr/wiki/string.ToMinutesSeconds)( [number](https://gmod.tr/wiki/number) time )

Verilen zamanı "DD:SS" formatında döndürür.

[string](https://gmod.tr/wiki/string) string.[ToMinutesSecondsMilliseconds](https://gmod.tr/wiki/string.ToMinutesSecondsMilliseconds)( [number](https://gmod.tr/wiki/number) time )

Verilen zamanı "DD:SS:ms" formatında döndürür.

[table](https://gmod.tr/wiki/table) string.[ToTable](https://gmod.tr/wiki/string.ToTable)( [string](https://gmod.tr/wiki/string) str )

String'i karakterlere böler ve ardışık bir karakter tablosu oluşturur. Kodlamanın bir sonucu olarak, ASCII olmayan karakterler çıktı tablosunda birden fazla karaktere bölünecektir. Çıktı tablosundaki her karakter değeri her zaman 1 bayt olacaktır.

[string](https://gmod.tr/wiki/string) string.[Trim](https://gmod.tr/wiki/string.Trim)( [string](https://gmod.tr/wiki/string) Inputstring, [string](https://gmod.tr/wiki/string) Char = "%s" )

Bir string'in başındaki ve sonundaki eşleşmeleri kaldırır.

[string](https://gmod.tr/wiki/string) string.[TrimLeft](https://gmod.tr/wiki/string.TrimLeft)( [string](https://gmod.tr/wiki/string) str, [string](https://gmod.tr/wiki/string) char = "%s" )

Bir string'in başındaki boşlukları/karakterleri kaldırır.

[string](https://gmod.tr/wiki/string) string.[TrimRight](https://gmod.tr/wiki/string.TrimRight)( [string](https://gmod.tr/wiki/string) str, [string](https://gmod.tr/wiki/string) char = "%s" )

Bir string'in sonundaki boşlukları/verilen karakteri kaldırır.

[string](https://gmod.tr/wiki/string) string.[upper](https://gmod.tr/wiki/string.upper)( [string](https://gmod.tr/wiki/string) str )

Bir string'deki küçük harfleri büyük harflere çevirir. Bu fonksiyon, İngilizce olmayan özel UTF-8 karakterlerinde çalışmaz.

- [GMod Wiki ana sayfası](https://gmod.tr/wiki)

---

[Tüm sunucular](https://gmod.tr/) · [GmodTR Launcher](https://gmod.tr/launcher) · [Rehber](https://gmod.tr/rehber) · [GMod Wiki](https://gmod.tr/wiki) · [GmodTR nedir?](https://gmod.tr/hakkinda) · [Sunucu ekle](https://gmod.tr/sunucu-ekle) · [Discord](https://discord.gg/gmodtr)

Kaynak: https://gmod.tr/wiki/string
