我正在尝试基于-
字符拆分字符串,并将-
字符前后的单词插入到列表(result
)中,这两个单词具有不同的索引。我想要实现的是检查角色-
之前和之后是否有空格。如果找到空间,请执行前面提到的拆分。否则,如果-
之前或之后没有空格,请不要执行任何拆分。
示例:
String1 =伦敦 - 英国
String2 =巴黎 - 法国
拆分String1
并将London
index(0)
和United Kingdom
index(1)
result
插入-
列表,因为前后有空格String 2
请勿与Paris-France
分开index(0)
并插入-
,因为 Dim result As New List(Of String)()
For Each str_get As String In Split
If (str_get.IndexOf("\t-\t")) Then
Dim splitStr = str_get.Split({"-", "/"}, StringSplitOptions.None)
For Each str_split As String In splitStr 'Add to result list
result.Add(str_split.Trim()) ' Enter into result list
' result.TrimExcess()
Next
Else
End If
之前和之后没有空格。
代码:
Split
For
是一个可以被视为字符串数组的字符串。 {{1}}循环将获取该数组中的每个字符串并进行检查。
有任何想法或建议吗?
答案 0 :(得分:3)
只需尝试拆分 " - "
而不是"-"
。它应该工作
修改强>
好的,只是确认String.Split
无效(使用String
分隔符)
这将有效:
splitStr = Regex.Split(str_get, " - ")
答案 1 :(得分:0)
试试这个: -
Dim splitStr = str_get.Split({" - ", "/"}, StringSplitOptions.None)
而不是: -
Dim splitStr = str_get.Split({"-", "/"}, StringSplitOptions.None)
答案 2 :(得分:0)
如果我理解你的要求:
Dim splits = From str In strings
Let parts = str.Split({" - "}, StringSplitOptions.RemoveEmptyEntries)
Select parts.ToList()
Dim result As List(Of List(Of String)) = splits.ToList()
答案 3 :(得分:0)
要确定您的文字是否包含“ - ”,即SPACE HYPHEN SPACE,您只需使用此声明进行测试.......
If Instr(DataToTest, " - ") > 0 Then
'contains the space hyphen space values
Else
'does not contain space hyphen space
End If
DataToTest是您要测试的文本字符串