替换并包含无法识别字符串

时间:2015-05-27 09:44:26

标签: asp.net .net vb.net

我正在尝试从电话号码中删除国家/地区代码并将其放在文本框txtMobile中。 cCode只是一个空字符串。

GlobalsFSiA.COUNTRY_CODES.Split(",")包含+44和+353。

我正在测试的电话号码是+353861234567

For Each code As String In GlobalsFSiA.COUNTRY_CODES.Split(",")
    If objEmployee.MobilePhone.Contains(code) Then
       cCode = code
    End If
Next
Dim number As String = objEmployee.MobilePhone.Replace(cCode, "0")
txtMobile.Text = number

2 个答案:

答案 0 :(得分:1)

首先,您必须搜索实际使用的split()方法,以及split()substring()之间的差异:

我认为Substring()更适合这种情况,你可以像这样编码从给定的数字中提取国家代码:

    Dim mobileNumber As String = "+353861234567"
    Dim countryCode As String = mobileNumber.Substring(0, 3)

答案 1 :(得分:1)

使用此代码我得到了正确的结果

Dim sTest As String = "+353861234567"
Dim cCode As String = ""

Dim numbers As New List(Of String)()
numbers.Add("+44")
numbers.Add("+353")

For Each code As String In numbers
    If sTest.Contains(code) Then
        cCode = code
    End If
Next
Dim number As String = sTest.Replace(cCode, "0")

cCode是在内部声明的吗?可能是在解析之前从对象中获取值的选项