regexp:match()

regexp:match() 根據正則表示式在字串上執行匹配,並將找到的子匹配作為結果返回。

語法

regexp:match(targetString, regExpString[, flagsString])

引數

targetString

用於執行正則表示式匹配的字串。

regExpString

要計算的 JavaScript 風格的正則表示式。

flagsString 可選

一個包含字元標誌的可選字串。

字元標誌包括

g

全域性匹配。返回字串中每一次匹配的子匹配。如果未指定此標誌,則只返回第一次匹配的子匹配。

i

不區分大小寫的匹配。如果指定此標誌,則匹配將不區分大小寫進行。

返回值

一個 match 元素的節點集,其中每個元素的值等於第一個引數字串中被正則表示式捕獲的部分。如果不是全域性匹配,則第一個匹配元素的值是整個正則表示式匹配的字串部分。

例如

xml
<xsl:for-each select="regExp:match('https://mdn.club.tw/en/docs/Firefox_3_for_developers',
                                   '(\w+):\/\/([^/:]+)(:\d*)?([^# ]*)')">
   Part <xsl:value-of select="position()" /> = <xsl:value-of select="." />
</xsl:for-each>

此程式碼生成以下輸出

Part 1 = https://mdn.club.tw/en/docs/Firefox_3_for_developers
Part 2 = https
Part 3 = developer.mozilla.org
Part 4 =
Part 5 = /en/docs/Firefox_3_for_developers

規範

EXSLT - REGEXP:MATCH