我想用一个数字范围(0 到 20)分割一个字符串,字母应该是 .toLower
如何在我的代码中定义范围?
我试过这样做:("0","1","2","3")
Dim Tolerancevalueofext As String = "JS12"
Dim removenumber As String = Tolerancevalueofext.Substring(0, Tolerancevalueofext.IndexOf("0","1","2","3")).ToLower
但这绝对是错误的。
您的要求我很不清楚,但这里有一种方法:
1. 仅从字符串中提取数字(使用Regex)。
2.从包含数字的字符串中只提取字母并将它们转换为小写字母。
Private Sub Example()
Dim Tolerancevalueofext As String = "JS12"
' only numbers, output: "12"
Dim onlynumbers As String = extractNumberFromString(Tolerancevalueofext).ToString()
' only characters, output: "js"
Dim onlycharacters As String = String.Empty
For Each line As String In Tolerancevalueofext
If Not (IsNumeric(line)) Then
onlycharacters += line.ToLower()
End If
Next
End Sub
Public Shared Function extractNumberFromString(ByVal value As String) As Integer
Dim returnVal As String = String.Empty
Dim collection As System.Text.RegularExpressions.MatchCollection = System.Text.RegularExpressions.Regex.Matches(value, "\d+")
For Each m As System.Text.RegularExpressions.Match In collection
returnVal += m.ToString()
Next
Return Convert.ToInt32(returnVal)
End Function
输出:
onlynumbers = "12"
onlycharacters = "js"
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句