我的lotHtmlOriginal.Text
中有这个段落 <script type="text/javascript" src="jscolor/jscolor.js"></script>
Click here: <input class="color" value="">
我的问题是,当我创建子串waters71 </strong></p>
<p><strong>websitesss.com/sblogin/login.shtml/</strong><br />
<strong>1234213:123123</strong><br />
<strong>213123:12312</strong><br />
<strong>4213:196028</strong><br />
<strong>32131:43423</strong><br />
<strong>4444444:96980507</strong></p>
<p><strong>htt
的第二部分时,代码失败,因为substring无法找到它,但当我将其更改为某些内容时,它可以正常工作。
当我改变它时它不起作用......
</p>
这是我的代码
</strong>
如果不清楚,我会尝试在String St = lotHTMLOriginal.Text; ;
String firstPart = "blogin/login.shtml/</strong>";
String lastPart = "</p>";
int pFrom = St.IndexOf(firstPart) + firstPart.Length;
int pTo = St.IndexOf(lastPart);
String result = St.Substring(pFrom, pTo - pFrom);
lotHTML.Text = result;
和blogin/login.shtml/</strong>
之间取得所有内容
答案 0 :(得分:2)
看起来你想要找到从之前找到的位置开始的特定字符串,如string.IndexOf:
int pTo = St.IndexOf(lastPart, pFrom);
旁注:如果你需要大量的HTML处理,可能更容易使用HTML解析器(如HtmlAgilityPack)而不是使用字符串匹配或正则表达式,但对于简单的一次性代码,子串是可以的。
答案 1 :(得分:0)
此代码将在firstPart开始后找到第一个"</p>"
。
String lastPart = "</p>";
int pFrom = St.IndexOf(firstPart) + firstPart.Length;
int pTo = 0;
while(pTo - pFrom < 0)
{
pTo = St.IndexOf(lastPart);
}
答案 2 :(得分:0)
使用int pTo = St.IndexOf(lastPart);
您将获得第一个</p>
的索引,但您正在寻找最后一个,所以我认为您应该使用
int pTo = St.LastIndexOf(lastPart);
<强>输出:强>
<br /> <strong>1234213:123123</strong><br /> <strong>213123:12312</strong><br /> <strong>4213:196028</strong><br /> <strong>32131:43423</strong><br /> <strong>4444444:96980507</strong>
答案 3 :(得分:0)
我相信这会修复代码中的错误。我已经添加了一个新变量。如果这有意义/有帮助,请告诉我。
String St = lotHTMLOriginal.Text; ;
String firstPart = "blogin/login.shtml/</strong>";
String lastPart = "</p>";
int pFrom = St.IndexOf(firstPart) + firstPart.Length;
// these three lines changed
string St_temp = St.Substring(pFrom);
int pTo = St_temp.IndexOf(lastPart);
String result = St.Substring(pFrom, pTo);
lotHTML.Text = result;
我最终做的是在firstPart
中修剪St
之前的字符以稍微简化代码。它限制了你需要做的算术来获得你想要的结果。
// this is the result
<br />
<strong>1234213:123123</strong><br />
<strong>213123:12312</strong><br />
<strong>4213:196028</strong><br />
<strong>32131:43423</strong><br />
<strong>4444444:96980507</strong>