数字と文字の正規表現を作るにはどうすればいいですか?私が入力するたびに、ランダム化しないために文字列を読み込むだけです。私は入力と言うことができます - それは、number変数が順不同であるため無効な識別子になります。文字の上で私はa123456789を試しました。なぜなら、私はa1、a2、a3を入力すると、その順序で識別子として読み取るのです。数字と文字を組み合わせる別の変数を作成したかったのです。VB.NET正規表現0-9およびa-zは機能しませんか?
Dim input As String = txtInput.Text
Dim symbol As String = "\s*([-+*/=])\s*"
Dim numbers As String = "123456789" //("[0-9]") <-- doesnt work?
Dim letters As String = "abcdefghijklmnopqrstuvwxyz" // ("[a-z]")<-also
Dim substrings() As String = Regex.Split(input, symbol)
For Each match As String In substrings
If symbol.Contains(match) Then
lstOutput.Items.Add(match & " - operator")
ElseIf numbers.Contains(match) Then
lstOutput.Items.Add(match & " - number")
ElseIf letters.Contains(match) Then
lstOutput.Items.Add(match & " - identifier")
Else
lstOutput.Items.Add(match & " - Invalid Identifier")
End If
Next
入力:C1 + 2C + CAD + C1B
期待出力:
C1 - 識別子
- オペレータ
2cは - 1文字目は数
-
- オペレータ無効な識別子//無効なため
CAD - 識別子
-
- オペレータ
C1B - 識別子