修剪VB中的字符串开头形成应用程序

时间:2016-11-03 23:55:52

标签: vb.net string

以下是我要修剪的字符串/变量的示例:

type="game" music-file="my-file.mp3" gts="false"

我想找到以下代码的开头/结尾,修剪它们关闭。
知道字符串之前/之后,所以我能够使用replace("String", "")函数。
如何修剪字符串使其仅显示:music-file="my-file.mp3

  1. 我希望字符串进入文本框
  2. 如果可能的话,我想在开头结束。
  3. NOT 喜欢使用外部库( DLLS

2 个答案:

答案 0 :(得分:0)

Dim text As String = "type='game' music-file='my-file.mp3' gts='false'"
text = ((text.Substring(text.IndexOf("music-file"))).Substring(0, (text.Substring(text.IndexOf("music-file"))).IndexOf(" gts="))).Trim

答案 1 :(得分:0)

我认为您的关键字为music-file="

使用InStr()查找关键字示例:

int keyWordPos = InStr(<your string>,<your keyword>)  'keyWordPos = 13

您将获得关键字的第一个位置。接下来,使用它作为起始位置来查找值的结尾(我的意思是"的第二个music-file="my-file.mp3")。但是,不要忘记添加关键字长度以跳过第一个"。像这样。

int endWordPos = Instr(keyWordPos + len(<your keyword>),<your string>,<your keyword>)   'Start at 25 and endWordPos = 36

之后,使用SubString()获取您的值。

string strVal = <String Variable>.SubString(keyWordPos,endWordPos - keyWordPos + 1)

这是我的答案。

string strText = "type='game' music-file='my-file.mp3' gts='false'"
string keyWord = "music-file='"
int keyWordPos = Instr(strText,keyWord)   'Should be 13
int endWordPos = Instr(keyWordPos + len(keyWord),strText,"""") 'Should be 36
string resultText = strText.SubString(keyWordPos,endWordPos - keyWordPos +1)