Skip to main content
 首页 » 编程设计

c#之如何替换正则表达式模式的第一个匹配项,不理会其他人

2024年02月03日28Leo_wl

使用 C#,我如何只替换某些内容的第一个匹配项?

示例输入:<img src="1.jpg" />some other text<img src="2.jpg" />

我正在使用的正则表达式有效: <img.*?>

以下替换了所有匹配项,但是,我只想替换第一个匹配项并保留第二个匹配项(和所有其他匹配项)。

string val = Regex.Replace(input, "<img.*?>", string.Empty); 
return val; 

谢谢!

请您参考如下方法:

将1作为第三个参数传递。

Regex.Replace 有 an overload that takes a maximum number of replacements to make .


请注意,通过将 Regex 实例放在静态只读字段中,您可以获得更好的性能。这样,运行时就不需要在您每次调用 Replace 时重新解析正则表达式。