Isso funciona, mas "Nome" .split ('-') [0], por @Branco, pode ser mais fácil.
precisa
Você pode usá-lo na calculadora de campo? Caso contrário, você precisará usar o console python para iterar sobre os recursos. Comparado a isso, a calculadora de campo parece mais direta. Pode haver uma expressão melhor usando expressões regulares.
Alexandre Neto
3
Você não pode usá-lo na calculadora arquivada. Portanto, a resposta fornecida por Alexandre Neto é mais direta. Mas é melhor usá-lo com "-1" para evitar adicionar seu caractere à saída. Por exemplo: left ("Nome", strpos ("Nome", ':') - 1). Caso contrário, você vai acabar com "3833-" não apenas "3833"
Losbaltica
4
Você pode usar a calculadora de campo com a seguinte expressão:
string_to_array("Nombre", ' ')
A função string_to_array () divide a string em uma matriz usando o delimitador fornecido.
Se você deseja alguma posição da matriz, pode adicionar a posição e ela retornará o valor. como isso:
.split()
função python ?Respostas:
Sim você pode.
Use a calculadora de campo com a seguinte expressão:
A função strpos () retornará a posição de índice do primeiro caractere '-' e a função left () "apara" a string antes dessa posição.
fonte
Você pode usar a calculadora de campo com a seguinte expressão:
A função string_to_array () divide a string em uma matriz usando o delimitador fornecido.
Se você deseja alguma posição da matriz, pode adicionar a posição e ela retornará o valor. como isso:
fonte
Possível solução por meio do PyQGIS.
Vamos assumir que existe uma camada de pontos chamada
"some_points"
com sua tabela de atributos, veja a imagem abaixo.Prossiga
Plugins > Python Console > Show Editor
e cole o script abaixoA saída estará procurando
Referências:
fonte