1
string Example 1 : abc / 
string Example 2 : abc / cdf / / 
string Example 3 : abc / / / /
string Example 4 : / / / / / 
string Example 5 : abc / / xyz / / /  

我需要在许多情况下删除字符串中的斜杠。我猜这些场景在下面的预期结果中是不言自明的。

结果:

    string Example 1 : abc 
    string Example 2 : abc / cdf 
    string Example 3 : abc  
    string Example 4 :  
    string Example 5 : abc / xyz 

我该怎么做这个使用 vb.net?

4

3 回答 3

6

尝试这个:

Dim s As String '= ...
Dim aux() As String

aux = s.Split(New Char() {"/"c}, StringSplitOptions.RemoveEmptyEntries)
s = String.Join("/", aux)

您可能需要处理空格:

aux = s.Split("/ ".ToCharArray(), StringSplitOptions.RemoveEmptyEntries)
s = String.Join(" / ", aux)
于 2013-06-18T13:23:27.417 回答
2
Function RemoveTrailingSlash(ByVal s as String) As String
    'Note that space is included in this array
    Dim slash() As Char = "/ ".ToCharArray()
    s = s.TrimEnd()
    While s.EndsWith("/")
        s = s.TrimEnd(slash)
    End While
    Return s
End Function

直接输入回复窗口(未经测试!),但我认为它会工作。

于 2013-06-18T13:22:07.220 回答
1

您可以使用 Rexexp 表达式。波纹管应该工作:

 "(/\s+)+$"

它搜索:

  1. '/'
  2. 后跟一个或多个白字符:\s+
  3. 多次 - 表达式:(/\s+)+
  4. 在字符串结尾 ($)
于 2013-06-18T13:26:57.983 回答