regexp:match()

regexp:match() 对字符串执行正则表达式匹配,返回找到的子匹配项。

语法

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

参数

targetString

要对其执行正则表达式匹配的字符串。

regExpString

要评估的 JavaScript 样式正则表达式。

flagsString 可选

一个可选的包含字符标志的字符串。

字符标志为

g

全局匹配。返回字符串中每个匹配的子匹配项。如果未指定此标志,则仅返回第一个匹配的子匹配项。

i

不区分大小写的匹配。如果指定此标志,则以不区分大小写的方式执行匹配。

返回值

一个 match 元素的节点集,每个元素的字符串值等于第一个参数字符串的一部分,由正则表达式捕获。如果匹配不是全局匹配,则第一个匹配元素的值等于整个正则表达式匹配的字符串部分。

例如

xml
<xsl:for-each select="regExp:match('https://mdn.org.cn/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.org.cn/en/docs/Firefox_3_for_developers
Part 2 = https
Part 3 = developer.mozilla.org
Part 4 =
Part 5 = /en/docs/Firefox_3_for_developers

规范