I String ersetzen in einigen Teilen der Codetyp bin derzeit = type.Replace("TRIM", "RTRIM");
Was statt Zeichenfolge verwendet wird, ersetzen in C#
type = type.Replace("TRIM", "RTRIM");
StringBuilder builder =newStringBuilder();
builder.AppendLine(" .....bla bla...");
if (type.Trim() != ""){
builder.AppendLine(@" WHERE ({0}) ");
}
Die Datenbank aktuelle {0} Werte sind
- , lassen sich mit TRIM (VL9) LIKE '{1}%'
- TRIM (VL7) LIKE '{0}%' 3. (TRIM (VL9) LIKE '{0}%'))
- (VL9 LI KE '{1}%' AND (TRIM (VL9) LIKE '{0}%'))
Dies ist eine riesige Datenbank, und die Ersetzen-Funktion ist in vielen Dateien an vielen Orten eingesetzt. In Zukunft werden sie TRIM
's zu RTRIM
' s in der Datenbank ändern, so dass dann im Code (.cs-Dateien) ersetzen Zeichenfolge wird, die uns einen Fehler gibt.
Gibt es einen einfachen Weg zu Code, der jetzt und nach zukünftigen Änderungen funktioniert?
PS: ursprünglich die CS- Abfragen in DB2 waren, die auf SQL Server jetzt geändert werden Anfragen und jetzt werden sie in db werden die Änderungen wie TRIM
zu RTRIM
) Ändern
Regex verwendet werden können, aber für eine einfache Stelle ersetzen es wahrscheinlich übertrieben ist. – sln
lassen sagt, wenn der Datenbankwert RTRIM VL9 LIKE '{1}%' AND (TRIM (VL9) LIKE '{0}%')) .. das wird wieder machen RTRIM und RRTRIM .. so was kann getan werden. . ?? Ich versuche, REGEX..Regex.Replace (Typ, "(? I) [^ A-Za-z] Trim", "RTRIM"); und die Ausgabe ist RTRIM VL9 LIKE '{1}%' UND RTRIM (VL9) LIKE '{0}%')) eine der geschweiften Klammern fehlt beim Ersetzen, wie kann das ignoriert werden. Wie kann ich Regex hier verwenden? – virtualreality