English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Golang تعليمات الأساسيات

Golang تعليمات التحكم

Golang الوظائف & الطرق

Golang بنية المعلومات

Golang قطع & Arrays

Golang 字符串(String)

لغة Golang إشارات

واجهات Golang

تعاملات متوازية في Golang

استثناءات Golang (Error)

متنوعة أخرى في Golang

مقارنة السلاسل في Go

في لغة Go، الأحرف معتمدة باستخدام تشفير UTF-8 غير القابلة للتغيير هي سلسلة من البايتات العشوائية. يمكنك مقارنة الأحرف بطرق مختلفتين:

1. استخدام محاورات المقارنة:التحول إلى الأحرف يدعم محاورات المقارنة، أي==،!=،>=،<=،<،>. هنا==و!=محاورات تستخدم لتحقق من تساوي الأحرف. وأيضا >=،<=،<،> للبحث عن الترتيب اللغوي. يعود نتيجة هذه المحاورات نوع بيانات منطقي، مما يعني إذا كان الشرط ملتقى، فإنها تعودtrue، وإلا يعودfalse.

مثال على == و !=

//تحتوي الأحرف على == و !=
package main
import "fmt"
func main() {
    //إنشاء وتحديد قيم الأحرف
    //استخدام بيانات مختصرة
    str1 := "Geeks"
    str2 := "Geek"
    str3 := "w3codebox"
    str4 := "Geeks"
    //تحقق من أن الأحرف متساوية
    //استخدام محاورات ==
    result1 := str1 == str2
    result2 := str2 == str3
    result3 := str3 == str4
    result4 := str1 == str4
    fmt.Println("نتيجة 1: ", result1)
    fmt.Println("نتيجة 2: ", result2)
    fmt.Println("نتيجة 3: ", result3)
    fmt.Println("نتيجة 4: ", result4)
    //تحقق من أن الأحرف غير متساوية
    //استخدام محاورات !=
    result5 := str1 != str2
    result6 := str2 != str3
    result7 := str3 != str4
    result8 := str1 != str4
    fmt.Println("\nResult 5: ", result5)
    fmt.Println("نتيجة 6: ", result6)
    fmt.Println("Result 7: ", result7)
    fmt.Println("Result 8: ", result8)
}

الإخراج:

نتيجة 1:    false
Result 2:  false
نتيجة 3:    false
نتيجة 4:    true
نتيجة 5:    true
نتيجة 6:    true
Result 7:  true
Result 8:  false

مثال على محاورات مقارنة الأحرف 2:

//محاورات مقارنة الأحرف
package main 
  
import "fmt"
  
func main() { 
  
        //إنشاء وتحديد القيم
        //استخدام بيانات مختصرة
    myslice := []string{"Geeks", "Geeks", 
                    "gfg", "GFG", "for" 
      
    fmt.Println("Slice: ", myslice) 
  
    //استخدام محاورات مقارنة
    result1 := "GFG" > "Geeks"
    fmt.Println("نتيجة 1: ", result1) 
  
    result2 := "GFG" < "Geeks"
    fmt.Println("نتيجة 2: ", result2) 
  
    result3 := "Geeks" >= "for"
    fmt.Println("نتيجة 3: ", result3) 
  
    result4 := "Geeks" <= "for"
    fmt.Println("نتيجة 4: ", result4) 
  
    result5 := "Geeks" == "Geeks"
    fmt.Println("نتيجة 5: ", result5) 
  
    result6 := "Geeks" != "for"
    fmt.Println("نتيجة 6: ", result6) 
}

الإخراج:

قطعة:    [Geeks Geeks gfg GFG for]
نتيجة 1:    false
نتيجة 2:    true
نتيجة 3:    false
نتيجة 4:    true
نتيجة 5:    true
نتيجة 6:    true

2. باستخدام دالة Compare():يمكنك أيضًا استخدام الدوال المدمجة في حزمة الأحرف مقارنة() مقارنة بين كلمتين. بعد مقارنة الكلمتين، تعود هذه الدالة بالعدد. القيم هي:

  • إذاstr1 == str2،يعود بالعدد 0 .

  • إذاstr1> str2،يعود بالعدد 1 .

  • إذاstr1 < str2،يعود بالسالب -1 .

النحو:

func Compare(str1, str2 string) int
//استخدام دالة compare() لتحليل الأحرف
package main 
  
import ( 
    "fmt"
    "strings"
) 
  
func main() { 
  
    //استخدام دالة مقارنة للتعامل مع مقارنة الأحرف
    fmt.Println(مقارنة(ـ "gfg",ـ "Geeks")) 
      
    fmt.Println(مقارنة(ـ "w3codebox",ـ "w3codebox")) 
      
    fmt.Println(مقارنة(ـ "Geeks",ـ "ـ GFG")) 
      
    fmt.Println(مقارنة(ـ "GeeKS",ـ "GeeKs")) 
}

الإخراج:

1
0
1
-1