Uzyskiwanie określonej części ciągu z pola w tabeli atrybutów QGIS?

10

Mam trochę kłopotów z tą sytuacją.

wprowadź opis zdjęcia tutaj

Chcę, aby „NumeroCamp” wyświetlał tylko te liczby w „Tekst”.

Czy w kalkulatorze polowym jest jakaś funkcja, która mogłaby mi w tym pomóc?

Alexandre Rodrigues
źródło
1
Patrz na to pytanie tutaj: gis.stackexchange.com/questions/127415/...
Marybeth
Chcę utworzyć nowe pole w mojej tabeli atrybutów, zwracając wszystkie cyfry między znakami / i _ pola o nazwie „lokalizacja”, stosując w mojej sytuacji wyrażenie podane przez @ArMoraer: regexp_substr( "Text", '/(\\d*)\_' )Jednak nie daje to pożądanego rezultatu: ! [wprowadź opis obrazu tutaj ] ( i.stack.imgur.com/92zAd.png ) Jak mogę dostosować wyrażenie do mojej sprawy? Wiele z góry dziękuje każdemu, kto może pomóc lub dać jakieś sugestie.
abrobia
Jeśli masz nowe pytanie, zadaj je, klikając przycisk Zadaj pytanie . Dołącz link do tego pytania, jeśli pomaga to w zapewnieniu kontekstu. - Z recenzji
BERA
To tak naprawdę nie odpowiada na pytanie. Jeśli masz inne pytanie, możesz je zadać, klikając Zadaj pytanie . Możesz także dodać nagrodę za zwrócenie większej uwagi na to pytanie, gdy będziesz mieć wystarczającą reputację . - Z recenzji
Vince

Odpowiedzi:

17

Możesz użyć następującego wyrażenia w kalkulatorze polowym (testowanym na QGIS 2.18):

regexp_substr( "Text", ';(\\d*)\}' )

Spowoduje to zwrócenie wszystkich cyfr (jako tekstu) między znakami ;i }.

ArMoraer
źródło