我有一个复杂类型的字符串,我只需要根据行号重新排列每行的第一个“”:部分。
示例:RichTextBox1:
{"5":{"var1" : "Data", "var2" : "Data", "var3": "Data"},
"3":{"var1" : "Data", "var2" : "Data", "var3": "Data"},
"10":{"var1" : "Data", "var2" : "Data", "var3": "Data"},
"4":{"var1" : "Data", "var2" : "Data", "var3": "Data"},
"2":{"var1" : "Data", "var2" : "Data", "var3": "Data"}}
我想根据当前行号查找和替换号码。如你所见,有5行。所以字符串应显示“1”:然后第二行的开头“2”:等等......
我想做的输出如下:
{"1":{"var1" : "Data", "var2" : "Data", "var3": "Data"},
"2":{"var1" : "Data", "var2" : "Data", "var3": "Data"},
"3":{"var1" : "Data", "var2" : "Data", "var3": "Data"},
"4":{"var1" : "Data", "var2" : "Data", "var3": "Data"},
"5":{"var1" : "Data", "var2" : "Data", "var3": "Data"}}
我目前知道如何查找和替换文本的方式在VB.NET上是这样的:
Dim Lines() As String = RichTextbox1.Lines
Lines(1) = Lines(1).Replace("""1""", """1""")
Lines(2) = Lines(2).Replace("""1""", """2""")
Lines(3) = Lines(3).Replace("""1""", """3""")
Lines(4) = Lines(4).Replace("""1""", """4""")
Lines(5) = Lines(5).Replace("""1""", """5""")
RichTextBox1.Lines = Lines
但这里有两个问题。
问题1:我需要预先指定多少行。在我的应用程序中,我不知道数据将包含多少行。这将是不同的日常,因此需要一个循环?
问题2:我需要预先指定要替换的行中的哪个数字,但这是一个未知变量。它可以是该字符串中的任何数字。
关于如何制作此类功能的任何想法?简而言之,它只需要逐行循环并在“”:部分的每一行开头指定一个数字,例如1,2,3,4,5。