c#如何为html字符串添加自定义属性

本文关键字:字符串 添加 自定义属性 html | 更新日期: 2023-09-27 18:08:05

我有字符串包含html,我想添加到一些属性的html字符串。

是否有任何html解析器/编辑器类在。net可以用来做到这一点?

例如,我有标签<script>在html和我想添加属性src="somesrtpath"的所有。

我可能只会有一种情况html开头只包含两个脚本标签比如

 <script type="text/javascript" `<add hrere src>` >
 </script>
 <script type="text/javascript" `<add hrere src>`>
 </script>

基本上我想做的就是对一些函数说-这里是html为每个脚本标签添加这个src

c#如何为html字符串添加自定义属性

如果你的HTML是一个字符串,你当然可以解析它,并使用:

HTML敏捷包,这里有很多,真的,很多的例子…

如果你得到的HTML作为一个字符串,那么你可以使用.IndexOf("<script ")找到脚本。

for (int scriptStart = htmlContent.IndexOf("<script "); scriptStart > -1; scriptStart = htmlContent.IndexOf("<script ",  scriptStart + 1))
{
    // Find position of the type= bit.
    int typeAttributeIndex = htmlContent.IndexOf("type='"text/javascript'"", scriptStart);
    htmlContent.Insert(typeAttributeIndex + 22, " src='"something'"");
}

这是有点快和脏。如果您希望对它进行更多的清理,您可以使用正则表达式来确保正确匹配脚本标记。您还可以匹配脚本块的结尾,寻找>,但要注意脚本标记可以是<script ... ></script>,有时也可以是<script ... />