1. Главная
  2. Функции XPath
  3. substring()

substring XPath

Функция substring возвращает подстроку переданного ей строкового аргумента, которая начинается с позиции, указанной вторым аргументом и длиной, указанной третьим аргументом.

Если третий аргумент опущен, подстрока продолжается до конца строки. Если численные аргументы являются нецелыми, они округляются при помощи функции round.

Синтаксис

XPath 1.0

string substring( string, number, number? )

Спецификация

Описание и примеры

В XPath позицией первого символа является 1, а не 0, как в некоторых других языках программирования.

При вычислении подстроки учитываются следующие условия.

  • Если первый численный аргумент меньше 1 (это относится и к отрицательной бесконечности), то подстрока начинается с начала строки.
  • Если первый численный аргумент больше длины строки (это относится и к положительной бесконечности), то подстрока будет пустой.
  • Если второй численный аргумент меньше 0.5 (это относится и к отрицательной бесконечности), то подстрока будет пустой.
  • Если второй численный аргумент, сложенный с первым, больше длины строки плюс один, подстрока будет продолжаться до конца строки.

Примеры

substring('123456', 1, 3) ? '123'
substring('123456', 0.1, 3) ? '123'
substring('123456', 0, 3) ? '123'
substring('123456', -4) ? '123456'
substring('123456', 2, 3) ? '234'
substring('123456', 2, 5) ? '23456'
substring('123456', 2, 6) ? '23456'
substring('123456', 2) ? '23456'
substring('123456', 5, 0.5) ? '5'
substring('123456', 5, 0.499) ? ''
substring('123456', 5, -1) ? ''
substring('123456', 5) ? '56'
substring('123456', 6) ? '6'
substring('123456', (1 div 0)) ? ''