替换函数中的 XSLT 3 正则表达式

xslt 3 regex in replace function

提问人:Caroline 提问时间:10/14/2023 更新时间:10/14/2023 访问量:21

问:

我想从字符串的开头删除或删除字符串,或者从字符串的末尾删除:'a''the''checklist''procedures?'

输入示例:

A Detailed procedure
The flight checklist
Takeoff procedures

期望的输出,分别是:

Detailed
flight
Takeoff

使用变量

<xsl:sequence select="replace($string, '^(a|the)\s(.*)\s(procedures?|checklist)$', '$2', 'i')" />

返回完整的但$string

<xsl:sequence select="replace('A flight checklist', '^(a|the)\s(.*)\s(procedures?|checklist)$', '$2', 'i')" />

按预期返回。flight

正则表达式 替换 XSLT-3.0

评论


答:

2赞 Martin Honnen 10/14/2023 #1

我会尝试,或者也许.replace($string, '(^(a|the))|((procedures?|checklist)$)', '', 'i')replace($string, '(^(a|the)\s)|(\s(procedures?|checklist)$)', '', 'i')

评论

0赞 Caroline 10/14/2023
两人都奏效了,马丁,谢谢