有一封电子邮件,想要从中删除第一个"@"符号,然后确保它在第二次检查中没有多于一个.目前我正在做这件事.
Dim tempEmail As String = ContactEmail
Dim count As Integer = 0
If tempEmail.IndexOf("@") <> -1 Then 'check for one
count += 1
tempEmail.Remove(tempEmail.IndexOf("@"), 1)
End If
If tempEmail.IndexOf("@") <> -1 Then 'check for two
count += 1
End If
If count = 1 Then
JustifyString(ContactEmail, 66, " ", LEFT_JUSTIFY)
Else
ContactEmail = BLANK_EMAIL
End If
Run Code Online (Sandbox Code Playgroud)
但是在调试之后,我发现它实际上从来没有从tempEmail中删除字符串中的"@"符号.为什么?
字符串是不可变的.所有String方法都不会改变String,而是创建一个新的String并返回它.试试这个:
tempEmail = tempEmail.Remove(tempEmail.IndexOf("@"), 1)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
160 次 |
| 最近记录: |