Asp.net 在字符串VB.net中元素的第二个最后一个实例之前插入文本
我有一个类似以下布局的文档(实际上要大得多):Asp.net 在字符串VB.net中元素的第二个最后一个实例之前插入文本,asp.net,vb.net,substr,lastindexof,Asp.net,Vb.net,Substr,Lastindexof,我有一个类似以下布局的文档(实际上要大得多): 对 我正在从其他地方导入html,但我无法控制它。我需要在最后的第二个div:I.e.之前添加一点额外的html <div id="header"> <div id="whatever"> <div id="content"> <p>Yes</p> </div> [In here!]
对
我正在从其他地方导入html,但我无法控制它。我需要在最后的第二个div:I.e.之前添加一点额外的html
<div id="header">
<div id="whatever">
<div id="content">
<p>Yes</p>
</div>
[In here!]
</div>
</div>
对
[在这里!]
现在我已经用substr和lastindexof实现了一部分,但是我以前不太清楚如何到达div
以下是我所拥有的:
Public Partial Class RightMenuControl
Inherits System.Web.UI.UserControl
Private dtItemsFeed As dsItems.ItemsFeedDataTable
Private taItemsFeed As New dsItemsTableAdapters.ItemsFeedTableAdapter
Private allText As String
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
loadData()
End Sub
Private Sub loadData()
dtItemsFeed = New dsItems.ItemsFeedDataTable
dtItemsFeed = taItemsFeed.GetCode()
For Each rFeed As dsItems.ItemsFeedRow In dtItemsFeed
allText = rFeed.SideCode
Next
Dim FirstDiv As String = allText.LastIndexOf("</div>")
Dim LastDiv As String = allText.Substring(FirstDiv, 6)
Dim str As String = allText
Dim strRes As String = str.Insert(FirstDiv, "<div>extrahtml</div>")
ltrSide.Text = strRes
End Sub
End Class
公共部分类RightMenuControl
继承System.Web.UI.UserControl
专用dtItemsFeed As dsItems.ItemsFeedDataTable
Private TaItems作为新DSItemStableApters.ItemsFeedTableAdapter提供
私有allText作为字符串
受保护的子页加载(ByVal sender作为对象,ByVal e作为System.EventArgs)处理Me.Load
loadData()
端接头
专用子加载数据()
dtItemsFeed=新dsItems.ItemsFeedDataTable
dtItemsFeed=taItemsFeed.GetCode()
对于每个rFeed,作为dtItemsFeed中的dsItems.ItemsFeedRow
allText=rFeed.SideCode
下一个
Dim FIRSTDIVAS String=allText.LastIndexOf(“”)
Dim LastDiv As String=allText.Substring(FirstDiv,6)
Dim str As String=allText
Dim strRes As String=str.Insert(FirstDiv,“extrahtml”)
ltrSide.Text=strRes
端接头
末级
将我的超文本HTML div打印到:
<div id="header">
<div id="whatever">
<div id="content">
<p>Yes</p>
</div>
</div>
<div>extrahtml</div>
</div>
对
超HTML
汤姆好的,知道这将永远是倒数第二个Div,这就应该做到了
Dim LastDiv As Int = allText.LastIndexOf( "</div>" )
Dim SecondToLastDiv As Int = allText.LastIndexOf( "</div>", LastDiv ) - 1
Dim str As String = allText
Dim strRes As String = str.Insert(SecondToLastDiv, "<div>extrahtml</div>")
Dim LastDiv As Int=allText.LastIndexOf(“”)
Dim SecondToLastDiv As Int=allText.LastIndexOf(“,LastDiv)-1
Dim str As String=allText
Dim strRes As String=str.Insert(SecondToLastDiv,“extrahtml”)
嘿,谢谢。这个结构有点像一个演示,大致展示了它是什么,但实际上里面有30个div,而且数字可以改变,所以我必须根据第二个最后一个div之前的情况来做(我也喜欢Jing和Snagit…!)我更新了我的答案,以考虑到你的评论。抱歉搞混了!
Dim LastDiv As Int = allText.LastIndexOf( "</div>" )
Dim SecondToLastDiv As Int = allText.LastIndexOf( "</div>", LastDiv ) - 1
Dim str As String = allText
Dim strRes As String = str.Insert(SecondToLastDiv, "<div>extrahtml</div>")