File: Data.xml
<?xml version="1.0" encoding="utf-8"?>
<data>
<text>Welcome to XSL world.</text>
<string>Welcome</string>
<string>XSL</string>
<string>XML</string>
</data>
File: Transform.xslt
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<TABLE border="1">
<TR>
<TH colspan="3">
<xsl:value-of select="//text"/>
</TH>
</TR>
<TR>
<td>string</TH>
<td>starts-with</TH>
<td>contains</TH>
</TR>
<xsl:for-each select="//string">
<TR>
<TD>
<xsl:value-of select="."/>
</TD>
<TD>
<xsl:value-of select="starts-with(//text,.)"/>
</TD>
<TD>
<xsl:value-of select="contains(//text,.)"/>
</TD>
</TR>
</xsl:for-each>
</TABLE>
</xsl:template>
</xsl:stylesheet>
Output:
<?xml version="1.0" encoding="UTF-8"?><TABLE border="1"><TR><TH colspan="3">Welcome to XSL world.</TH></TR><TR><td>string</TH><td>starts-with</TH><td>contains</TH></TR><TR><TD>Welcome</TD><TD>
true</TD><TD>true</TD></TR><TR><TD>XSL</TD><TD>false</TD><TD>true</TD></TR><TR><TD>XML</TD><TD>false</TD><TD>false</TD></TR></TABLE>
5.46.contains |
| 5.46.1. | contains() returns true if the first argument string contains the second argument string |