Sie Schleife benötigen thro Achten Sie auf die Textzeilen im Textfeld. Sie können dies mit folgendem tun.
Private Sub Command1_Click()
Dim lines() As String
Dim trimmedLine As String
Dim i As Integer
If Len(Text1.Text) = 0 Then Exit Sub
lines = Split(Text1.Text, vbCrLf)
For i = 0 To UBound(lines)
'Trim white space from left of the line. Only used for checking if the line starts with for or if.
trimmedLine = LTrim(lines(i))
If StrComp(Left(trimmedLine, 3), "for", vbTextCompare) = 0 Then
lines(i) = Left(lines(i), Len(lines(i)) - 1) & ");"
ElseIf StrComp(Left(trimmedLine, 2), "if", vbTextCompare) = 0 Then
lines(i) = lines(i) & ")"
End If
Next i
Text1.Text = Join(lines, vbCrLf)
End Sub
Was Sie in der Schleife tun, um den Text jeder Zeile zu ändern, hängt von Ihren Bedürfnissen ab. Sie können Zeichenfolgenfunktionen wie Ersetzen(), Links(), Rechts(), Mittel() usw. verwenden.
Das sollte Ihnen einen Anfang geben.
Vielen Dank. Es funktionierte für "für" nach dem Klicken auf die Schaltfläche, ")" wird nur in for-Schleife hinzugefügt, aber nicht in "if" Bedingung können Sie mir bitte die Option – Jerry
sagen Wie bereits erwähnt, würde die tatsächliche Analyse jeder Zeile von der tatsächlichen abhängen Text. Das Beispiel, das ich gab, war einfach. Ich vermute, du hast eine Zeile mit "if (n> = 1", also würde das Beispiel, das ich gab, am Anfang dieser Zeile kein "if" finden. Wenn das der Fall ist, kannst du line = LTrim (line) verwenden, um das zu entfernen Leerraum von der linken Seite der Zeichenkette vor dem If/ElseIf Innerhalb von If und ElseIf könnten Sie dann Zeilen (i) anstelle von Zeilen ändern. Sie würden einfach die Zeile verwenden, um zu überprüfen, ob die Zeile mit "beginnt". für "oder" wenn ". – Marc
danke, für Ihre Hilfe, können Sie genauen Code geben – Jerry