14 Hledání a nahrazování
Chcete-li konkrétně nahradit data v atributovém poli, můžete použít funkci regexp_replace()
v kalkulátoru polí QGIS. Tato funkce umožňuje vyhledávat textové vzory v poli a nahrazovat je novým textem. Ke komplexnímu nahrazení lze použít jak jednoduché výrazy, tak regulární výrazy.
Syntaxe:
regexp_replace("Feldname", 'Suchmuster', 'Ersatztext')
"Název pole"
: Pole atributu, ve kterém má být nahrazení provedeno."Hledaný vzor"
: Výraz nebo textový vzor, který chcete nahradit. Může to být jednoduchý text nebo regulární výraz."Náhradní text"
: Text, který má nahradit nalezený výraz nebo vzor.
Příklad:
Pokud chcete nahradit výraz Term1
výrazem Term2
v poli atributu s názvem „Název pole“, je výraz následující:
regexp_replace("Feldname", 'Begriff1', 'Begriff2')
V tomto příkladu funkce vyhledá výskyty term1
v každém datovém záznamu pole „Název pole“ a nahradí je term2
.
Příklad použití:
Předpokládejme, že atributové pole „Název pole“ obsahuje seznam druhů stromů a vy chcete nahradit všechny výskyty výrazu „dub“ výrazem „buk“. Výraz v kalkulačce pole by pak vypadal takto:
regexp_replace("Feldname", 'Eiche', 'Buche')
Po provedení se všechny záznamy obsahující výraz „dub“ automaticky nahradí výrazem „buk“.
Výhody funkce regexp_replace():
- Flexibilita: Kromě jednoduchých výrazů lze pomocí regulárních výrazů definovat také složité textové vzory, které zachycují specifické nebo opakující se vzory.
- Přesnost: Pomocí regulárních výrazů můžete zajistit, že budou nahrazeny pouze požadované výskyty.
- Automatizace: Funkci lze použít pro všechny datové záznamy v atributovém poli najednou, takže není nutné provádět ruční úpravy.
Poznámka:
Pokud chcete nahradit pouze jednoduché výrazy bez použití regulárních výrazů, můžete také použít funkci replace()
, která je pro tyto případy jednodušší. Výraz by pak vypadal takto:
replace("Feldname", 'Begriff1', 'Begriff2')
Funkce regexp_replace()
však nabízí více možností, protože rozpoznává a mění vzory a složité textové struktury.