Eso funciona, pero "Name" .split ('-') [0], por @Branco, podría ser más fácil.
recurvata
¿Se puede usar en la calculadora de campo? De lo contrario, debe usar la consola de Python para iterar sobre las características. En comparación con eso, la calculadora de campo parece más sencilla. Puede haber una mejor expresión usando expresiones regulares.
Alexandre Neto
3
No puede usarlo en una calculadora archivada. Entonces, la respuesta proporcionada por Alexandre Neto es más directa. Pero es mejor usarlo con "-1" para evitar agregar su carácter a la salida. Por ejemplo: left ("Name", strpos ("Name", ':') - 1). De lo contrario, terminará con "3833-" no solo "3833"
Losbaltica
4
Puede usar la calculadora de campo con la siguiente expresión:
string_to_array("Nombre", ' ')
La función string_to_array () divide la cadena en una matriz usando el delimitador proporcionado.
Si desea una posición de la matriz, puede agregar la posición y devolverá el valor. Me gusta esto:
.split()
función de Python ?Respuestas:
Sí tu puedes.
Use la calculadora de campo con la siguiente expresión:
La función strpos () devolverá la posición de índice del primer carácter '-' y la función left () "recorta" la cadena antes de esa posición.
fuente
Puede usar la calculadora de campo con la siguiente expresión:
La función string_to_array () divide la cadena en una matriz usando el delimitador proporcionado.
Si desea una posición de la matriz, puede agregar la posición y devolverá el valor. Me gusta esto:
fuente
Posible solución mediante PyQGIS.
Supongamos que hay una capa de punto llamada
"some_points"
con su tabla de atributos, vea la imagen a continuación.Continúe
Plugins > Python Console > Show Editor
y pegue el script a continuaciónLa salida se verá
Referencias
fuente