gpt4 book ai didi

c# - 匹配整个单词或短语的正则表达式

转载 作者:太空宇宙 更新时间:2023-11-03 20:03:05 26 4
gpt4 key购买 nike

我有以下输入:

Hewlett Packard LaserJet 打印机配件

我需要以下输出:

LaserJet 打印机配件

基于 Hewlett Packard 被匹配。

我相信这是 Regex 的完美候选者(我可能是错的),不幸的是,我的经验有限,但一系列字符串拆分和连接似乎很冗长。

我尝试过的

return Regex.Replace(FullProductName, "\b" + ManufacturerName + "\b", string.Empty, RegexOptions.IgnoreCase);

我发现这不起作用,因为 \b 指的是单词边界,但这里我有一个短语。

注意:有时可能是 Sony 或其他单字制造商名称。

最佳答案

您可以使用以下正则表达式来匹配制造商名称 Hewlett Packard 或开头的任何其他单字制造商名称。用空字符串替换匹配的字符串将为您提供所需的输出。

正则表达式:

^(Hewlett Packard\s*|[A-Z][a-z]+\s*)

替换字符串:

Empty string

DEMO

代码:

string str = @"Hewlett Packard LaserJet Printer Thingy
Sony LaserJet Printer Thingy";
string result = Regex.Replace(str, @"(?m)^(Hewlett Packard\s*|[A-Z][a-z]+\s*)", "");
Console.WriteLine(result);
Console.ReadLine();

IDEONE

关于c# - 匹配整个单词或短语的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26017889/

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