Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Mengesan Watak Khas dalam Go Strings?

Bagaimana untuk Mengesan Watak Khas dalam Go Strings?

Patricia Arquette
Patricia Arquetteasal
2024-11-02 00:27:02950semak imbas

How to Detect Special Characters in Go Strings?

Mengenal pasti Watak Khas dalam Rentetan dalam GoLang

Dalam GoLang, pengendalian rentetan selalunya melibatkan keperluan untuk menentukan sama ada aksara atau subrentetan tertentu layak sebagai watak istimewa. Ini boleh menjadi penting untuk pengesahan data, pembersihan input dan pelbagai keperluan pengaturcaraan lain. Mari kita terokai pendekatan yang berbeza untuk tugasan ini.

Menggunakan rentetan.Mengandungi Mana-mana

Rentetan.MengandungiSebarang fungsi menyediakan cara yang cekap untuk memeriksa sama ada rentetan yang diberikan mengandungi mana-mana aksara dinyatakan dalam subrentetan yang disediakan. Sebagai contoh, untuk mengesahkan sama ada rentetan mengandungi mana-mana aksara khas "|" atau ",":

<code class="go">package main

import "fmt"
import "strings"

func main() {
    fmt.Println(strings.ContainsAny("Hello World", ",|")) // false
    fmt.Println(strings.ContainsAny("Hello, World", ",|")) // true
    fmt.Println(strings.ContainsAny("Hello|World", ",|")) // true
}</code>

Menggunakan rentetan.IndexFunc

Sebagai alternatif, jika matlamatnya adalah untuk memastikan sama ada rentetan mengandungi aksara di luar julat ASCII (iaitu, aksara khas), fungsi rentetan.IndexFunc boleh digunakan. Fungsi ini membenarkan takrifan fungsi tersuai untuk menguji setiap rune dalam rentetan:

<code class="go">package main

import (
    "fmt"
    "strings"
)

func main() {
    f := func(r rune) bool {
        return r < 'A' || r > 'z'
    }
    if strings.IndexFunc("HelloWorld", f) != -1 {
        fmt.Println("Found special char")
    }
    if strings.IndexFunc("Hello World", f) != -1 {
        fmt.Println("Found special char")
    }
}</code>

Atas ialah kandungan terperinci Bagaimana untuk Mengesan Watak Khas dalam Go Strings?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn