是否可以在角色类中使用 anchor ?这不起作用:
analyze-string('abcd', '[\s^]abcd[\s$]')
在字符类中时,
^
和$
看起来像是文字。但是,转义它们(\^
,\$
)也不起作用。我正在尝试使用此表达式来创建单词边界(XSLT/XQuery中不提供
\b
),但我不希望不使用组((^|\s)
)-因为非捕获组不可用,这意味着在某些情况下场景我可能会遇到大量不需要的捕获组,这创建了一个新任务,即在不需要的捕获组中查找“真实”捕获组。 最佳答案
我相信答案是否定的,您不能将^
和$
包括在[]
中作为 anchor ,而不能仅用作文字字符。 (我希望您也能做到这一点。)
但是,您可以在字符串的前面和后面加上一个空格,然后只将\s
查找为单词边界,而不必担心 anchor 。例如。
analyze-string(concat(' ', 'abcd xyz abcd', ' '), '\sabcd\s')
您可能还需要在每个
+
之后添加\s
,但这是一个单独的问题。关于正则表达式 anchor 定在字符类中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16825316/