konto usunięte

Temat: pozyskanie fragmentu ciągu znaków z tabeli atrybutów

Witam,

posiadam shp z LMN z wydzieleniami. W tabeli atrybutów mam kolumnę ADR_FOR w której dane są w następującej formie: "08-06-1-01-100 -a -00". Z tego ciągu znaków potrzebuję wyświetlić, jako label, tylko "a". Czy i w jaki sposób da się to zrobić?

Z góry dziękuję za jakiekolwiek podpowiedzi
Karol Stachura

Karol Stachura Nie ma na świecie
rzeczy niemożliwych
- są tylko mało
pra...

Temat: pozyskanie fragmentu ciągu znaków z tabeli atrybutów

Rozumiem że ArcGIS, vbs w oknie właściwości zakładka label z użyciem funkcji mid
http://www.w3schools.com/vbscript/func_mid.aspKarol S. edytował(a) ten post dnia 07.06.10 o godzinie 09:20
Tomasz K.

Tomasz K. GIS, Leśnictwo

Temat: pozyskanie fragmentu ciągu znaków z tabeli atrybutów

Dokładnie tak jak napisał Karol trzeba pobawić się funkcją MID.
A dokładnie to musisz założyć w TA nowe pole(literka "a" oznacza pododdział wiec pole może się tak właśnie nazywać).

Sesja edycyjna musi być rozpoczęta.
kalkulator pól->zaznaczasz zaawansowane i ciąg znakowy.
Wpisujesz formułę: Mid ( [ADR_FOR],19,1 )
U mnie wyświetlają się po wpisaniu tej formuły oznaczenia pododdziałów w TA.

19 - to kolejna liczba "literki" w całym ciągu znakowym
1- bo jest tylko jedna literka. Gdyby było np: "ab" to trzeba by było wpisać 2.
Michał B.

Michał B. Digital Cartographer

Temat: pozyskanie fragmentu ciągu znaków z tabeli atrybutów

Robiłem coś podobnego w Excelu funkcją FRAGMENT.TEKSTU
Rafał N.

Rafał N. leśnictwo,

Temat: pozyskanie fragmentu ciągu znaków z tabeli atrybutów

Do wypowiedzi Tomka dodam tylko ze warto te adresy przekopiować do jakiejs kolejnej kolumny i wtedy obrabiac. ArcGIS potrafi pogubic dane zwlaszcza gdy pracujesz w trybie edytora
Krzysztof Solecki

Krzysztof Solecki GIS, LMN, GPS, LiDAR

Temat: pozyskanie fragmentu ciągu znaków z tabeli atrybutów

Jeżeli chcesz to zrobić na warstwie o_podst to komenda wygląda następująco Trim(Mid( [ADR_FOR] ,19,1)). w zależności od warstwy należy użyć w środku ADR_FOR bądź ADR_LES.

konto usunięte

Temat: pozyskanie fragmentu ciągu znaków z tabeli atrybutów

Ja proponuję zmodyfikować formuję do: Trim(Mid( [ADR_FOR] ,19,2))

Taka postać uwzględnia 2-literowe wydzielenia, np. ax, by. Instrukcja Urządzania Lasu przewiduje taki wariant, gdy liczba wydzieleń w oddziale leśnym przekracza liczbę dozwolonych liter alfabetu.

Pozdrawiam. MS

konto usunięte

Temat: pozyskanie fragmentu ciągu znaków z tabeli atrybutów

A trochę z innej bajki. Czy można w ArcGIS zrobić tak aby zaktualizować tylko drugi znak w polu tekstowym o długości 4 znaków?

Mam pole tekstowe wypełnione "0000" a chciałbym je zaktualizować tak żeby uzyskać "0100".

Dzięki z góry

Temat: pozyskanie fragmentu ciągu znaków z tabeli atrybutów

Olaf Pietrzak:
A trochę z innej bajki. Czy można w ArcGIS zrobić tak aby zaktualizować tylko drugi znak w polu tekstowym o długości 4 znaków?

Można np. tak, wykorzystując parser Python w kalkulatorze pól:
!Field![:1] + "1" + !Field![2:]
Karol Stachura

Karol Stachura Nie ma na świecie
rzeczy niemożliwych
- są tylko mało
pra...

Temat: pozyskanie fragmentu ciągu znaków z tabeli atrybutów

można find and replace w polu atrybutów jeśli wszędzie jest "0000" i wszędzie ma być "0100"

Temat: pozyskanie fragmentu ciągu znaków z tabeli atrybutów

lub, tak:

!Field!.replace(!Field![1:2],"1")

Temat: pozyskanie fragmentu ciągu znaków z tabeli atrybutów

Andrzej Horbacz:
Witam,

posiadam shp z LMN z wydzieleniami. W tabeli atrybutów mam kolumnę ADR_FOR w której dane są w następującej formie: "08-06-1-01-100 -a -00". Z tego ciągu znaków potrzebuję wyświetlić, jako label, tylko "a". Czy i w jaki sposób da się to zrobić?

Z góry dziękuję za jakiekolwiek podpowiedzi

Wydaje mi się, że najprościej będzie w wersji Python:

!FIELD!.split(' -')[-2]

Następna dyskusja:

Krzaki po eksporcie tabeli ...




Wyślij zaproszenie do