guclusat

Tanınmış Üye
Süper Moderatör
Compare Two Strings
String comparisons are performed in the same manor as number comparisons. As an example, we will create two strings, and perform an action based on their contents:

  1. Create two variables containing strings:
    Kod:
    String1 = "I am String1";
    String2 = "I am String2";
  1. Compare the two strings:
    Kod:
    if String1 == String2 then
        --the two strings are equal
    else
        --the two strings are not equal
        if String1 > String2 then
            --String1 is alphabetically larger than String2
        elseif String1 < String2 then
            --String1 is alphabetically smaller than String2
        end
    end
Note: if you want to compare the lengths of two strings, you must use the String.Length action:
Kod:
if String.Length(String1) == String.Length(String2) then
    --the two strings are the same length!!
end
Tip: To perform a non-case-sensitive comparison on two strings, use a String.CompareNoCase action.
 

AutoPlay Media Studio ile İki Metni Karşılaştırma​


AutoPlay Media Studio ile hazırladığımız uygulamalarda bazen iki farklı metnin aynı olup olmadığını kontrol etmemiz gerekebilir. Örneğin kullanıcı tarafından girilen bir metni daha önce belirlediğimiz bir metinle karşılaştırabilir veya iki farklı değişkendeki yazıların birbirine eşit olup olmadığını kontrol edebiliriz.

String değerlerini karşılaştırırken sayısal değerlerde kullandığımız karşılaştırma operatörlerinden yararlanabiliriz.

İki Metin Değişkeni Oluşturma​


Öncelikle karşılaştıracağımız iki metni değişkenlere aktaralım:

Kod:
String1 = "Ben birinci metnim";
String2 = "Ben ikinci metnim";

Artık String1 ve String2 değişkenlerini birbirleriyle karşılaştırabiliriz.

İki Metnin Aynı Olup Olmadığını Kontrol Etme​


İki metnin tamamen aynı olup olmadığını kontrol etmek için == operatörünü kullanabiliriz:

Kod:
if String1 == String2 then
-- İki metin aynı
else
-- İki metin farklı
end

İki değişkendeki metin aynıysa then bölümündeki kod çalışır. Metinler farklıysa else bölümündeki kod çalışır.

Metinleri Alfabetik Olarak Karşılaştırma​


İki metnin sadece aynı olup olmadığını değil, alfabetik olarak hangisinin önce veya sonra geldiğini de kontrol edebiliriz.

Kod:
if String1 == String2 then
-- İki metin aynı
else
if String1 > String2 then
-- String1, String2'den alfabetik olarak sonra geliyor
elseif String1 < String2 then
-- String1, String2'den alfabetik olarak önce geliyor
end
end

Burada > ve < operatörleri kullanılarak iki metnin alfabetik sıralamadaki konumu kontrol edilmektedir.

İki Metnin Uzunluğunu Karşılaştırma​


Bazen metinlerin içeriklerinin aynı olup olmadığını değil, kaç karakterden oluştuklarını karşılaştırmak isteyebiliriz.

Bunun için String.Length kullanılabilir:

Kod:
if String.Length(String1) == String.Length(String2) then
-- İki metnin karakter sayısı aynı
end

Bu kontrol yalnızca metinlerin uzunluğunu karşılaştırır. Metinlerin içeriklerinin aynı olduğunu göstermez.

Örneğin iki farklı kelime aynı karakter sayısına sahip olabilir.

Büyük ve Küçük Harf Farkını Yok Sayarak Karşılaştırma​


Karşılaştırma sırasında büyük ve küçük harf farkının dikkate alınmasını istemiyorsak String.CompareNoCase kullanılabilir.

Kod:
if String.CompareNoCase(String1, String2) == 0 then
-- Metinler büyük/küçük harf farkı dikkate alınmadan aynı
end

Bu yöntem özellikle kullanıcıdan alınan metinlerin kontrol edilmesinde kullanışlıdır. Böylece aynı metnin farklı harf büyüklükleriyle yazılması durumunda karşılaştırmanın başarısız olması önlenebilir.

Sonuç​


AutoPlay Media Studio'da metin karşılaştırmak için ihtiyaca göre farklı yöntemler kullanılabilir. == operatörü iki metnin aynı olup olmadığını kontrol etmek için, > ve < operatörleri alfabetik karşılaştırma için, String.Length metin uzunluklarını karşılaştırmak için ve String.CompareNoCase ise büyük-küçük harf farkını dikkate almadan karşılaştırma yapmak için kullanılabilir.
 
Geri
Yukarı