使用 CsQuery 我需要修改一组锚元素,例如
'...
Dim cqContext = WebForms.CreateFromRender(Page, AddressOf MyBase.Render, writer)
Dim cq = cqContext.Dom
Dim foo = cq("a")
'...
例如,在所有锚元素上,我需要将 href 开头的“/MyFolderName/”替换为“../”。
我可以简单地这样做:
For Each i In cq("a")
i.Attributes("href") = Regex.Replace(i.Attributes("href"), "^/MyFolderName/", "../", RegexOptions.IgnoreCase)
Next
还是使用each
实用程序方法更有效?
我还应该将选择器缩小到cq("a[href^=""/MyFolderName/""]")
吗?
还是有更好的方法?
编辑:高效我不仅仅意味着最便宜,我还在寻找更优雅的方式,例如更少的代码/更少的操作方式。
具体来说:
- 我应该使用
each
实用程序方法吗? - 我应该像上面那样缩小我的选择器吗?