XPath - ฟังก์ชันสตริง

ต่อไปนี้เป็นรายการฟังก์ชัน XPath String -

ส. ฟังก์ชั่นและคำอธิบาย
1

starts-with(string1, string2)

ส่งคืนจริงเมื่อสตริงแรกเริ่มต้นด้วยสตริงที่สอง

2

contains(string1, string2)

ส่งคืนจริงเมื่อสตริงแรกมีสตริงที่สอง

3

substring(string, offset, length?)

ส่งคืนส่วนของสตริง ส่วนเริ่มต้นที่ชดเชยความยาวที่ระบุ

4

substring-before(string1, string2)

ส่งคืนส่วนของ string1 ก่อนการเกิดครั้งแรกของ string2

5

substring-after(string1, string2)

ส่งคืนส่วนของ string1 หลังจากการเกิดครั้งแรกของ string2

6

string-length(string)

ส่งกลับความยาวของสตริงในรูปของอักขระ

7

normalize-space(string)

ตัดแต่งช่องว่างนำหน้าและต่อท้ายจากสตริง

8

translate(string1, string2, string3)

ส่งคืน string1 หลังจากอักขระที่ตรงกันใน string2 ถูกแทนที่ด้วยอักขระใน string3

9

concat(string1, string2, ...)

เชื่อมสตริงทั้งหมดเข้าด้วยกัน

10

format-number(number1, string1, string2)

ส่งคืนรูปแบบที่จัดรูปแบบของ number1 หลังจากใช้ string1 เป็นสตริงรูปแบบ string2 เป็นสตริงโลแคลทางเลือก

ตัวอย่าง

ตัวอย่างนี้สร้างตารางขององค์ประกอบ <student> ที่มีชื่อและความยาวของชื่อโดยทำซ้ำทับนักเรียนแต่ละคน จะคำนวณความยาวของชื่อนักเรียนหลังจากเชื่อมต่อชื่อและนามสกุลแล้วพิมพ์รายละเอียดของนักเรียน

student.xml

<?xml version = "1.0"?>
<?xml-stylesheet type = "text/xsl" href = "students.xsl"?>
<class>
   <student rollno = "393">
      <firstname>Dinkar</firstname>
      <lastname>Kad</lastname>
      <nickname>Dinkar</nickname>
      <marks>85</marks>
   </student>
   <student rollno = "493">
      <firstname>Vaneet</firstname>
      <lastname>Gupta</lastname>
      <nickname>Vinni</nickname>
      <marks>95</marks>
   </student>
   <student rollno = "593">
      <firstname>Jasvir</firstname>
      <lastname>Singh</lastname>
      <nickname>Jazz</nickname>
      <marks>90</marks>
   </student>
</class>

student.xsl

<?xml version = "1.0" encoding = "UTF-8"?>
<xsl:stylesheet version = "1.0"
   xmlns:xsl = "http://www.w3.org/1999/XSL/Transform">  

   <xsl:template match = "/">
      <html>
         <body>
            <h2>Students</h2>
				
            <table border = "1">
               <tr bgcolor = "#9acd32">	
                  <th>Name</th>     
                  <th>Length of Name</th>
               </tr>
					
               <xsl:for-each select = "class/student">
				
                  <tr>
                     <td><xsl:value-of select = "concat(firstname,' ',lastname)"/></td>
                     <td><xsl:value-of select = "string-length(concat(firstname,' ',lastname))"/></td>
                  </tr>	
               </xsl:for-each>
            </table>
         </body>
      </html>
   </xsl:template>

</xsl:stylesheet>

ตรวจสอบผลลัพธ์


Language