Алексей Валиков - Технология XSLT

Тут можно читать онлайн Алексей Валиков - Технология XSLT - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming, издательство БХВ-Петербург, год 2002. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Технология XSLT
  • Автор:
  • Жанр:
  • Издательство:
    БХВ-Петербург
  • Год:
    2002
  • Город:
    Санкт-Петербург
  • ISBN:
    нет данных
  • Рейтинг:
    4.75/5. Голосов: 81
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 100
    • 1
    • 2
    • 3
    • 4
    • 5

Алексей Валиков - Технология XSLT краткое содержание

Технология XSLT - описание и краткое содержание, автор Алексей Валиков, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

Книга посвящена разработке приложений для преобразования XML-документов с использованием XSLT — расширяемого языка стилей для преобразований. Обсуждается применение языков XSLT и XPath в решении практических задач: выводу документов в формате HTML, использованию различных кодировок для интернационализации и, в частности, русификации приложений, вопросам эффективности существующих подходов для решения проблем преобразования. Для иллюстрации материала используется большое количество примеров.

Для начинающих и профессиональных программистов

Технология XSLT - читать онлайн бесплатно полную версию (весь текст целиком)

Технология XSLT - читать книгу онлайн бесплатно, автор Алексей Валиков
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

starts-with('http://www.xsltdev.ru', 'http')true

starts-with('Title', 'ti')false

Функция contains

boolean contains( string , string )

Функция containsпринимает на вход два строковых аргумента и возвращает true, если первая строка содержит вторую и falseв противном случае.

contains('address@host.com', '(@')true

Функция substring-before

string substring-before( string , string )

Функция substring-beforeпринимает на вход два строковых аргумента. Эта функция находит в первой строке вторую и возвращает подстроку, которая ей предшествует. Если вторая строка не содержится в первой, функция вернет пустую строку.

Примеры

substring-before('12-May-1998', '-')'12'

substring-before('12 May 1998', ' ')'12'

substring-before('12 May 1998', ' ')'12'

substring-before('12 May 1998', '-')''

Функция substring-after

string substring-after( string , string )

Эта функция аналогична функции substring-before, только она возвращает строку, которая следует за вторым аргументом. Если вторая строка не содержится в первой, эта функция также вернет пустую строку.

Примеры

substring-after('12-May-1998', '-')'May-1998'

substring-after('12 May 1998', ' ')'May 1998'

substring-after('12 May 1998', ' ')'May 1998'

substring-after('12 May 1998', '-')''

Функция substring

string substring( string , number , number ?)

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

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

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

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

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

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

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

Примеры

substring('123456', 2, 3)'234'

substring('123456', 2, 5)'23456'

substring('123456', 2, 6)'23456'

substring('123456', 2)'23456'

substring('123456', -4)'123456'

substring('123456', 5, 5)'5'

substring('123456', 5)'56'

substring ('123456', 6)'6'

substring('123456', 1 div 0, )''

substring('123456', 2, -1)''

Функция string-length

number string-length( string ?)

Функция string-lengthвозвращает число символов строкового аргумента. Если аргумент опущен, string-lengthвозвращает длину строкового представления контекстного узла.

Напомним, что длина строки не имеет ничего общего с количеством байт, которое требуется для ее представления. Разные формы кодирования используют разное количество байт для записи символов, внутренние представления строк также могут быть различными, но длина строки в любом случае — это число символов, которые ее составляют.

Примеры

string-length('Barnes and Noble')16

string-length('Barness#x20;& Noble')14

Функция normalize-space

string normalize-space( string ?)

Функция normalize-spaceпроизводит со своим строковым аргументом так называемую нормализацию пробельного пространства. Это означает, что в строке удаляются ведущие и заключающие пробельные символы, а все последовательности пробелов заменяются одним пробельным символом. Иными словами, функция удаляет "лишние" пробелы в строке.

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

Примеры

normalize-space(' А - В - С ')'А-В-С'

normalize-space('А х9; В х9; С') > 'A B C'

Функция translate

string translate( string , string , string )

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

Пример

translate('abcdefgh', 'aceg', 'ACEG')'AbCdEfGh'

Если некоторый символ повторяется во втором аргументе несколько раз, учитывается только первое его появление.

Пример

translate('abcdefgh', 'acaeaga', 'ACBECGD')'AbCdEfGh'

Если второй аргумент длиннее третьего, символы, для которых нет соответствующей замены, удаляются из строки.

Пример

translate('a b-c=d+e|f/g\h', 'aceg-=+|/\', 'ACEG')'AbCdEfGh'

Если третий аргумент длиннее второго, остаток строки игнорируется.

Пример

translate('abcdefgh', 'aceg', 'ACEGBDFH')' AbCdEfGh'

Функцию translateможно использовать, например, для изменения регистра символов. Конечно, это будет работать только для тех языков, для которых такая функция будет записана, но и этого в большинстве случаев будет достаточно. В будущем предполагается включить в новые версии языка более мощные функции для работы с регистрами символов.

Пример

Для того чтобы изменять регистр слов русского языка, мы можем определить две переменные, lowercaseи uppercase, которые будут содержать строчные и прописные символы основного русского алфавита (мы включили в него букву ё — строчную (" ё") и прописную (" Ё"), хотя в соответствии с Unicode она относится к расширениям). Мы также создадим два именованных шаблона, которые будут менять регистр символов строкового параметра str. Для удобства использования мы вынесем определения переменных и шаблонов во внешний модуль ru.xsl.

Листинг 6.6. Преобразование ru.xsl

version="1.0"

xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

name="uppercase"

select="concat('АБВГ',

'ДЕЁЖЗ',

'ИЙКЛ',

'МНОП',

'РСТУ',

'ФХЦЧ',

'ШЩЪЫ',

'ЬЭЮЯ')"/>

name="lowercase"

select="concat('абвг',

'деёжЗ',

'ийкл',

'мноп',

'рсту',

'фхцч',

'шщъы',

'ьэюя')"/>

Использовать этот модуль можно, включив или импортировав его в основное преобразование элементами xsl:includeили xsl:import. После этого в основном преобразовании будут доступны переменные lowercaseи uppercase, которые можно будет использовать в функции translateи шаблоны с именами lowerи upper.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Алексей Валиков читать все книги автора по порядку

Алексей Валиков - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Технология XSLT отзывы


Отзывы читателей о книге Технология XSLT, автор: Алексей Валиков. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x