2015-11-08 49 views
1

我正在使用VB創建一個使用stringbuilder的html文檔。我想拆分stringbuilder並在一些html註釋之間添加更多的文本。該字符串生成器看起來有點像這樣:使用html註釋作爲分隔符的VB拆分字符串

<html> 
<!--STYLE--> 
<style> 
</style> 
<!--STYLE--> 
</html> 

我想我能夠做到:

dim split_doc() as string = sb.tostring().split("<!--STYLE-->") 

然而結果是,StringBuilder的是在<只拆分,而不是完整的HTML評論。

是否可以使用html評論進行拆分?

回答

0

您應該激活源代碼文件頂部的Option Strict On語句來檢測並防止類似這樣的問題。

可能發生的事情是,當Option Strict被禁用,則<!--STYLE-->字只是變成字符數組調用String.Split函數,它的Char數組,然後將其拆分內容時的任何字符的構成所述找到<!--STYLE-->單詞,從「<」字符開始。

要解決此問題,只需使用String.Split功能的正確重載需要一個字符串作爲paramater,這種方式:

 Dim html As String = 
<a><![CDATA[ 
<html> 
<!--STYLE--> 
<style> 
</style> 
<!--STYLE--> 
</html> 
]]></a>.Value 

    Dim tokens As String() = 
     html.Split({"<!--STYLE-->"}, StringSplitOptions.RemoveEmptyEntries) 
+0

謝謝!我查了嚴格的選項,並沒有真正理解它(我是一個新手!),但將我的分隔符放入數組括號並添加stringsplitoptions工作。 – grumpasaurus

+0

剛開始我的頭也很嚴格,這真的很有幫助。希望我有足夠的代表給你一個贊成票! – grumpasaurus

+0

不客氣。如果您希望爲每個新的源文件自動激活Option語句,請參閱此鏈接中的**更改默認項目值**部分:https://support.microsoft.com/en-us/kb/311329 – ElektroStudios