Vb.net vbforms应用程序中字符串的裁剪

Vb.net vbforms应用程序中字符串的裁剪,vb.net,string,Vb.net,String,下面是我要修剪的字符串/变量的示例: type="game" music-file="my-file.mp3" gts="false" type=“game”music file=“my file.mp3”gts=“false” 我想找到以下代码的开头/结尾,并将其修剪掉。 我不知道前后的字符串,所以我不能使用替换(“字符串”)函数。 如何修剪字符串使其仅显示:music file=“my file.mp3 我希望字符串进入文本框 如果可能的话,我想修剪开头和结尾 我不想使用外部库(DLL) 我

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

type="game" music-file="my-file.mp3" gts="false" type=“game”music file=“my file.mp3”gts=“false” 我想找到以下代码的开头/结尾,并将其修剪掉。
我不知道前后的字符串,所以我不能使用
替换(“字符串”)
函数。
如何修剪字符串使其仅显示:
music file=“my file.mp3

  • 我希望字符串进入文本框
  • 如果可能的话,我想修剪开头和结尾
  • 我不想使用外部库(DLL

  • 我假设您的关键字是
    music file=“

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

    int keyWordPos = InStr(<your string>,<your keyword>)  'keyWordPos = 13
    
    之后,使用SubString()获取您的值。

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

    没什么可谈的,但看起来这根绳子几乎可以json@Plutonix是的,没错。我试图从中剪切的字符串是json。如果您只需要一些东西,那么解析它比将其解析为字符串要容易得多。@puropoix我如何对字符串进行词组化以获得一个值(my file.mp3)?这与json完全不同。如果这是基于xml/sgml的源代码,那么属性的顺序将无法保证。即使在实践中可能保持一致性,使用专用xml解析器也是更明智的做法。
    int endWordPos = Instr(keyWordPos + len(<your keyword>),<your string>,<your keyword>)   'Start at 25 and endWordPos = 36
    
    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)