Maison  >  Article  >  développement back-end  >  Comment implémenter une requête floue via la correspondance de chaînes dans Golang

Comment implémenter une requête floue via la correspondance de chaînes dans Golang

PHPz
PHPzoriginal
2023-04-14 14:42:292471parcourir

En traitement de données, les requêtes floues sont une compétence très pratique. Dans Golang, les requêtes floues peuvent être implémentées en utilisant des expressions régulières ou une correspondance de chaînes.

Généralement, la méthode de correspondance de chaînes est plus simple et peut déjà répondre aux exigences des requêtes floues générales. Présentons comment implémenter une requête floue via la correspondance de chaînes dans Golang.

Tout d'abord, nous devons importer le package strings lié ​​au traitement des chaînes, puis utiliser la fonction Contient dans le package pour implémenter une requête floue de chaînes. strings,然后使用包中的函数 Contains 实现字符串的模糊查询。

import (
    "strings"
)

func FuzzySearch(pattern string, str string) bool {
    return strings.Contains(str, pattern)
}

上述代码中,我们定义了一个 FuzzySearch 函数,接收两个字符串类型的参数,第一个参数 pattern 为模糊查询的模式,第二个参数 str 为需要被查询的字符串。

FuzzySearch 函数中,我们使用了 strings.Contains 函数实现了模糊查询功能。该函数会返回一个 bool 值,表示参数 str 中是否包含参数 pattern

接下来我们可以编写一段简单的测试代码来验证上述函数的功能:

func main() {
    fmt.Println(FuzzySearch("abc", "abcdef"))  // true
    fmt.Println(FuzzySearch("efg", "abcdef"))  // false
}

在上面的测试代码中,我们分别使用了字符串 abcdefefg 进行了模糊查询,第一次查询返回了 true,第二次查询返回了 false,可以验证函数的效果。

另外,需要注意的是,strings.Contains 函数是区分大小写的,如果需要实现不区分大小写的模糊查询,可以通过将字符串转为统一大小写来实现。

总结来说,Golang 中实现字符串模糊查询是十分简单的。通过导入 strings 包中的 Containsrrreee

Dans le code ci-dessus, nous définissons une fonction FuzzySearch qui reçoit deux paramètres de type chaîne. Le premier paramètre pattern est le modèle de requête floue et le deuxième paramètre est le modèle de requête floue. modèle de requête flou. Chaque paramètre str est la chaîne qui doit être interrogée. 🎜🎜Dans la fonction FuzzySearch, nous utilisons la fonction strings.Contains pour implémenter la fonction de requête floue. Cette fonction renvoie une valeur booléenne indiquant si le paramètre str contient le paramètre pattern. 🎜🎜Ensuite, nous pouvons écrire un code de test simple pour vérifier la fonctionnalité de la fonction ci-dessus : 🎜rrreee🎜Dans le code de test ci-dessus, nous avons utilisé les chaînes abcdef et efg code> exécutées une requête floue. La première requête a renvoyé <code>true et la deuxième requête a renvoyé false, ce qui peut vérifier l'effet de la fonction. 🎜🎜De plus, il convient de noter que la fonction strings.Contains est sensible à la casse. Si vous devez implémenter une requête floue insensible à la casse, vous pouvez le faire en convertissant la chaîne en casse uniforme. 🎜🎜En résumé, il est très simple d'implémenter une requête floue de chaîne dans Golang. En important la fonction Contains dans le package strings, nous pouvons rapidement implémenter la fonction de requête floue. Dans le traitement réel des données, les requêtes floues peuvent nous aider à localiser plus rapidement les données requises et à améliorer l'efficacité du traitement des données. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn