2016-01-23 47 views
1

[{「name」:「chrisjj」,「uuid」:「d086112c-6e25-31a0-acf0-f95c3ca98784」,「expiresOn」:「2016-02-22 23 :04:35 +0000「}]VB.net刪除並保留文本框中的文字

[{」name「:」ben「,」uuid「:」d086112c-7a26-33b5-ucf3-j96c1ca26854「,」expiresOn「:」2015-011-12 22 :04:35 +0000「}]

基本上我在一個項目上工作了一段時間,我試圖保留名稱chrisjj和ben,並刪除文本框中的其他文本在visual basic 2012中,如果你有任何想法將是很大的幫助

+0

這不僅僅是一個奇特的字符串。它是json,這意味着它代表一個對象 – Plutonix

回答

1

你可以使用正則表達式來實現你想要的。

Dim Input As String = RichTextBox1.Text 
Dim MC As MatchCollection = Regex.Matches(Input, Regex.Escape("[{""name"":""") & "[chrisjj|ben].*?" & Regex.Escape("]"), RegexOptions.IgnoreCase) 
Dim Output As New List(Of String) 

For i = 0 To MC.Count - 1 
    Output.Add(MC(i).Value) 
Next 
MsgBox(String.Join(vbNewLine, Output.ToArray())) 

我認爲這是你想要的。此正則表達式匹配[{「Name」:」然後chrisjj或奔,直到那張]發現

+0

或者你可以通過使用分割功能來簡化它「並使用索引4 – codeMonger123

+0

我更喜歡這個東西的正則表達式 – Youssef13

0

你可以這樣做:

If InStr(Textbox1.Text, "chrisjj") Then 
Textbox1.text = "chrisjj" 
else if InStr(Textbox1.Text, "ben") Then 
Textbox1.text = "ben" 
end if 

InStr Function收益首次出現的位置內另一個字符串。

此外

if TextBox1.Text.Contains("chrisjj") Then 
TextBox1.Text = TextBox1.Text = "chrisjj" 
ElseIf TextBox2.Text.Contains("ben") Then 
TextBox1.Text = TextBox1.Text = ben 
end if 

String.Contains Method (String)返回一個值,該值指示在此字符串中是否存在指定的子字符串。