Я пытаюсь извлечь текстовые данные из строкового поля, содержащего текст, разделенный точками, и помещая его в новые поля, используя калькулятор полей.
Я использую эту функцию Python (взято из Как извлечь текст перед / в QGIS? ):
from qgis.core import *
from qgis.gui import *
@qgsfunction(args='auto', group='Custom')
def func(value1, feature, parent):
return value1.split('.')[0]
Это возвращает весь текст перед первой точкой. Теперь мне интересно, как написать функцию для размещения каждой строки текста с разделителями в отдельном поле.
Перед:
После:
fields
. Я прав?Это не очень эффективный метод, но я использовал его раньше. Убедитесь, что существует,
Field2
иField3
используйте что-то вроде следующего:Пример :
Вот атрибут:
Затем, как только ваш скрипт будет сохранен, выберите для обновления
Field1
и используйте выражение:Результат:
источник