gpt4 book ai didi

c# - 关键字之间带有空格的任何字符

转载 作者:行者123 更新时间:2023-12-02 17:24:32 24 4
gpt4 key购买 nike

我正在创建一个关键字黑名单,我想在文本文件中检查这些关键字,但是,我无法找到任何可以帮助我解决以下问题的正则表达式文档。

我有一组列入黑名单的关键字:

welcome, goodbye, join us

我想检查一些文本文件是否有匹配项。我使用以下正则表达式来匹配确切的单词以及复数版本。

string.Format(@"\b{0}s*\b", keyword)

但是,我遇到了将关键字与两个单词及其之间的任意字符匹配的问题。上面的正则表达式匹配“加入我们”,但我还需要匹配“join@us”或“join_us”。

任何帮助将不胜感激。

最佳答案

我认为“中间的任何字符”可能会给你带来很多麻烦。例如,让我们考虑一下:

我们想找到“我的 Sprite ”...但你可能不想匹配“我自己”。

无论如何。如果可以的话,您可以使用 string.Replace 将关键字中的空格字符替换为点。 .

正则表达式中的

. 将匹配任何字符。

如果您不熟悉正则表达式,请查看此有用的备忘单:http://www.mikesdotnetting.com/article/46/c-regular-expressions-cheat-sheet

要解决“myself”和“my elf”的问题,请在正则表达式中使用比 . 更谨慎的内容。例如 [^a-zA-Z] 将匹配除从 a 到 z 和 A 到 Z 的字母之外的任何内容,或者 \W 将匹配非单词字符,表示除 a-zA-Z0-9_ 之外的任何内容,因此它相当于 [^a-zA-Z0-9_]

还要注意复数形式,如 city - city 和所有不规则形式。

关于c# - 关键字之间带有空格的任何字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32889461/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com