我需要每个人的相互vb.net
例如替换丰富的文本框两个字符串替换两个字符串:
填充:12px的的22px 33px 0像素;
我想 “” 和 “” 取代 “” 为 “”
是这样一个:
填充:12px的0px 33px 22px;
注:这两个数字并不总是22 & 0,他们是变量
我需要每个人的相互vb.net
例如替换丰富的文本框两个字符串替换两个字符串:
填充:12px的的22px 33px 0像素;
我想 “” 和 “” 取代 “” 为 “”
是这样一个:
填充:12px的0px 33px 22px;
注:这两个数字并不总是22 & 0,他们是变量
我找到了!
感谢Markus代码,我用substring修改了一段代码后就完成了他的代码,它完美的工作!
For Each lne In RichTextBox1.Lines
If lne.Contains("padding") Then
Dim code As String = lne
Dim del As String = code.Substring(code.IndexOf("padding") + 8)
Dim padding As String = del
Dim split As List(Of String) = padding.Split(" "c).ToList 'split padding String by spaces
Dim nd As String = split(2)
Dim rth As String = split(4)
split(2) = rth 'replace 22px with 0px
split(4) = nd 'replace 0px; with 22px;
Dim newPadding As String = String.Join(" "c, split.ToArray)
End If
Next
,这可能让你开始:
Dim padding As String = "padding: 12px 22px 33px 0px;"
Dim split As List(Of String) = padding.Split(" "c).ToList 'split padding String by spaces
split(2) = "0px" 'replace 22px with 0px
split(4) = "22px;" 'replace 0px; with 22px;
Dim newPadding As String = String.Join(" "c, split.ToArray)
Console.WriteLine(newPadding)
该代码只适用于数字“22和0”..但数字12,22,33和0并不总是相同的 他们每次都会改变 –
这就是为什么我说它会让你开始,所以如果你交换他们,你不得不考虑代码写作平台 – Markus
下面的交换方法,将工作仅当您输入的字符串格式总是相同。每个项目之间应有相同数量的空格,字符串中的项目数量限制为5
。
Dim input As String = "padding: 12px 22px 33px 0px;"
Dim arinput As String() = input.Split(" ")
Dim val As String
val = arinput(2)
arinput(2) = arinput(4).ToString.Replace(";", "")
arinput(4) = val & ";"
Dim output As String = String.Join(" ", arinput)
“;”现在是在错误的地方 – Markus
@Markus是的,你是对的我只是错过了它 –
是字符串的格式总是相同的? –
你到目前为止尝试过什么吗? – Alexei
是的,它总是这样,是的,我已经尝试了这么多代码 –