Поделиться через


Функция starts-with (XPath)

Возвращает значение TRUE, если строка первого аргумента начинается со строки второго аргумента. В противном случае возвращает FALSE.

boolean starts-with(string, string)

Заметки

Если аргумент не имеет строкового типа, он сперва преобразуется в строку с помощью функции string(), после чего вычисления производятся с результатом преобразования.

Предупреждение

Преобразованиястрок для наборов узлов, передаваемых этой функции в качестве аргументов, могут привести к непредвиденным результатам.Для получения дополнительной информации см. Функция string (XPath).

Эта функция учитывает регистр символов.

Пример

Следующий пример иллюстрирует использование функции starts-with() для запроса коллекции книг, заголовки которых начинаются с заглавной буквы "W".

XML-файл (starts-with.xml)

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" 

href="contains.xsl"?>      
<bookstore>
  <book>
     <title>The Weather Pattern</title>
     <author>Weather Man</author>
     <price>100.00</price>
  </book>
  <book>
     <title>Weaving Patterns</title>
     <author>Weaver</author>
     <price>150.00</price>
  </book>
  <book>
     <title>Speech Pattern</title>
     <author>Speaker</author>
     <price>15.00</price>
  </book>
  <book>
     <title>Writing Style</title>
     <author>Writer</author>
     <price>1500.00</price>
  </book>
</bookstore>

XSLT-файл (starts-with.xsl)

<?xml version='1.0'?>
<xsl:stylesheet version="1.0"           

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

  <xsl:output method="html"   
     omit-xml-declaration="yes"/>

  <xsl:template match="/">
    <html>
       <head><title>example</title></head>
    <body>
       <xsl:apply-templates select="//book"/>
    </body>
    </html>
  </xsl:template>

  <xsl:template match="book">
     <xsl:if test="starts-with(title, 'W')">
       <DIV>
         <B><xsl:value-of select="title"/></B> by 
         <I><xsl:value-of select="author"/></I> costs
         <xsl:value-of select="price"/>.
       </DIV>
     </xsl:if>
  </xsl:template>

</xsl:stylesheet>

ms256174.collapse_all(ru-ru,VS.120).gifВывод

Таблица стилей XSLT, примененная к вышеуказанному XML-файлу (starts-with.xml), дает следующий результат:

Weaving Patterns компании Weaver по цене 150,00 долл.

Writing Style автора Writer по цене 1500.00 долл.

См. также

Ссылки

Справочник по типам данных XML