为什么下一个代码返回true(Saxon-EE 9.2 for .NET)?XQuery正则表达式错误
matches('some text>', '^[\w ]{3,200}$')
模式中没有>符号。 谢谢。
的XQuery:
<regexp-test>
<!-- why true? -->
<test1>{matches('some text>', '^[\w ]{3,200}$')}</test1>
<test2>{matches('some text>', '^[\w ]+$')}</test2>
<test3>{matches('< < >', '^[\w ]+$')}</test3>
<!-- valid: -->
<test4>{matches('some text!', '^[\w ]+$')}</test4>
<test5>{matches('.,', '^[\w ]+$')}</test5>
</regexp-test>
输出:
<regexp-test>
<!-- why true? -->
<test1>true</test1>
<test2>true</test2>
<test3>true</test3>
<!-- valid: -->
<test4>false</test4>
<test5>false</test5>
</regexp-test>
我认为,我们需要查看更多的代码。无法从您提供给我们的信息中判断出了什么问题。 – 2010-02-16 11:50:13
有什么资料? 我写了一个模式,示例文本,XQuery compliler!还有什么? – chardex 2010-02-19 09:29:26
这个模式绝对不应该匹配,因为'>'不是'\ w'的一部分。所以,正如艾伦摩尔所说,这个问题可能是其他地方 - 请发布一个完整的代码示例,可以重现该问题。 – 2010-02-23 10:05:29