如何使用正则表达式计算没有alt标记的img标记

本文关键字:img 标记 alt 何使用 正则表达式 计算 | 更新日期: 2023-09-27 18:20:28

如何使用regex计数中没有alt标记的img标记?

 MatchCollection AltTag = Regex.Matches(
     strIn,
     "<img .*? />", 
     RegexOptions.IgnoreCase | RegexOptions.Multiline
 );
 lblImgTags.Text = "We found " + AltTag.Count.ToString() + " images on this website ";

我像这样计算img标签,但我如何计算没有alt标签的img标签?

如何使用正则表达式计算没有alt标记的img标记

如何使用regex 计算没有alt标记的img标记

你不能。不能使用正则表达式来解析HTML。您可能认为您有一个可以充分包含的用例。我也是。我错了,恕我直言,恐怕你也错了。

使用HTML解析器来解析HTML。有几个,比如NSoup,它是优秀的Java JSoup库的.Net端口。但这只是众多选择中的一个。

^(?=.*<img)(?!.*alt).*

将是正则表达式

要计数,请使用前瞻性进行尝试。regex101演示

<img's(?![^>]*'balt's*=)

或者匹配标签要贵一点。regex101演示

<img's(?:(?!'balt's*=)[^>])+>

与您的RegexOptions.IgnoreCase 一起