Hallo, ich bin gerade dabei, einen auto-generierten Code in VB.NET zu übersetzen. Das läuft soweit ganz gut, nur auf dem Gebiet "Regular Expression" habe ich gar keine Ahnung. Das Problem ist, zu genutzten Java-Klassen die nötigen .NET-Gegenstücke zu finden. Für jemanden mit Ahnung bestimmt kein Problem.
Hier die Methode, die von einem Online-Übersetzer automatisch in VB.NET übersetzt wurde:
Spoiler anzeigen
Kann mir jemand sagen, wo es die Typen "Pattern" und "Matcher" in .NET gibt und wie ich das entsprechend einbauen muss?
Besten Dank!
*Topic verschoben, Spoiler eingefügt (Code sehr lang)*
Hier die Methode, die von einem Online-Übersetzer automatisch in VB.NET übersetzt wurde:
VB.NET-Quellcode
- Imports java.io.Star
- Imports java.util.Star
- Imports java.util.regex.Star
- Class V1
- '....
- Public Function FindToken(ByVal Rest As String) As AToken
- Dim Results As ArrayList(Of Integer) = New ArrayList(Of Integer)
- Dim ResultsV As ArrayList(Of String) = New ArrayList(Of String)
- Try
- Dim p As Pattern
- Dim m As Matcher
- p = Pattern.compile("^(\\()")
- m = p.matcher(Rest)
- If m.find Then
- Results.add(New Integer(Me.t_CharKlammerAuf))
- ResultsV.add(m.group)
- End If
- p = Pattern.compile("^(\\))")
- m = p.matcher(Rest)
- If m.find Then
- Results.add(New Integer(Me.t_CharKlammerZu))
- ResultsV.add(m.group)
- End If
- p = Pattern.compile("^(0)")
- m = p.matcher(Rest)
- If m.find Then
- Results.add(New Integer(Me.t_T_0))
- ResultsV.add(m.group)
- End If
- p = Pattern.compile("^(1)")
- m = p.matcher(Rest)
- If m.find Then
- Results.add(New Integer(Me.t_T_1))
- ResultsV.add(m.group)
- End If
- p = Pattern.compile("^(or)")
- m = p.matcher(Rest)
- If m.find Then
- Results.add(New Integer(Me.t_or))
- ResultsV.add(m.group)
- End If
- p = Pattern.compile("^(and)")
- m = p.matcher(Rest)
- If m.find Then
- Results.add(New Integer(Me.t_and))
- ResultsV.add(m.group)
- End If
- p = Pattern.compile("^(!)")
- m = p.matcher(Rest)
- If m.find Then
- Results.add(New Integer(Me.t_CharNot))
- ResultsV.add(m.group)
- End If
- p = Pattern.compile("^(gdw)")
- m = p.matcher(Rest)
- If m.find Then
- Results.add(New Integer(Me.t_gdw))
- ResultsV.add(m.group)
- End If
- p = Pattern.compile("^([\"& vbCr&"\"& vbLf&"\"& vbTab&"\\s])")
- m = p.matcher(Rest)
- If m.find Then
- Results.add(New Integer(Me.t_ignore))
- ResultsV.add(m.group)
- End If
- Catch e As Exception
- End Try
- Dim maxlength As Integer = 0
- Dim besttoken As Integer = 0
- Dim ret As AToken = New AToken
- ret.token = besttoken
- Dim i As Integer = 0
- Do While (i < Results.size)
- If (ResultsV.get(i).toString.length > maxlength) Then
- maxlength = ResultsV.get(i).toString.length
- besttoken = CType(Results.get(i),Integer).intValue
- ret.token = besttoken
- If (besttoken <> 0) Then
- ret.val = ResultsV.get(i).toString
- End If
- End If
- i = (i + 1)
- Loop
- Return ret
- End Function
Kann mir jemand sagen, wo es die Typen "Pattern" und "Matcher" in .NET gibt und wie ich das entsprechend einbauen muss?
Besten Dank!
*Topic verschoben, Spoiler eingefügt (Code sehr lang)*
„Was ich gerade mache? Ich reite Hand in Hand mit dem Matthäus-Effekt auf einer Exponentialfunktion.“
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()