Innerhalb einer Attributtabelle versuche ich, eine Zeichenfolge mit der Funktion 'Ersetzen' durch eine andere zu ersetzen. Als Beispiel gibt es eine Reihe von Features, deren Feld 'NAME' die Zeichenfolge '(B)' enthält, und ich möchte diese durch das Wort 'County' ersetzen. Ich aktiviere das Kontrollkästchen "Vorhandenes Feld aktualisieren" und verwende den folgenden Ausdruck
replace( '(B)','(B)','County')
Das Endergebnis ist, dass das Feld 'NAME' für jedes Feature durch 'County' ersetzt wird, unabhängig davon, ob das Feld 'NAME' ursprünglich die Zeichenfolge '(B)' enthielt oder nicht. Jede Hilfe wäre dankbar.
qgis
field-calculator
GrahamD
quelle
quelle
Antworten:
weist QGIS an, das '(B)' in '(B)' durch 'Land' zu ersetzen.
Sie wollen
= Ersetzen Sie das '(B)' in "Name" durch 'Land'.
Beachten Sie, dass die doppelten Anführungszeichen einen Feldnamen angeben, während sich die einfachen Anführungszeichen auf eine statische Zeichenfolge beziehen . Diese sind nicht austauschbar.
quelle
Die richtige Syntax lautet replace ([Feldname], '(B)', 'Land').
quelle
Öffnen Sie zunächst den Feldrechner und wählen Sie die Ersetzungsfunktion aus der Zeichenfolgenoption wie im folgenden Bild aus:
Zweitens weist QGIS an, das Ersetzen zu ersetzen ("Feldname", "(B)", "Land"). Zum Beispiel in diesem Fall; ersetzen ("MES_TIP", 'T', 'Rock'):
Drittens wählen Sie bitte den Ausgabefeldtyp: Text (Zeichenfolge) und bestimmen Sie dann den Feldnamen;
quelle