Orbeon使用什么口味的RegEx?
我试图在orbeon Form Builder中添加一个常规的印象,以防止输入带有“and”的内容。我面临的问题是,我尝试的每个正则表达式组合都会以某种方式失败验证。不是在焦点更改时,而是在提交表单时 正则表达式:Orbeon使用什么口味的RegEx?,regex,orbeon,xforms,formbuilder,Regex,Orbeon,Xforms,Formbuilder,我试图在orbeon Form Builder中添加一个常规的印象,以防止输入带有“and”的内容。我面临的问题是,我尝试的每个正则表达式组合都会以某种方式失败验证。不是在焦点更改时,而是在提交表单时 正则表达式:[^']{0512}/m 应允许所有最多512个字符(包括512个字符)的字符串不包括上述“和”。包括带回车符的字符串 在Orbeon的“公式”字段中:匹配(,“^[^”“”]{0512}$,“m”) 问题在于,Orbeon根据“和”是在字符串中回车之前还是之后输入的,以不同的方式验证
[^']{0512}/m
应允许所有最多512个字符(包括512个字符)的字符串不包括上述“
和”
。包括带回车符的字符串
在Orbeon的“公式”字段中:匹配(,“^[^”“”]{0512}$,“m”)
问题在于,Orbeon根据“
和”
是在字符串中回车之前还是之后输入的,以不同的方式验证表达式
例如:
这将失败(即表达式已成功验证):
这将通过(即表达式不起作用):
我有两个问题:
“
和”
的位置不同而不同你能发布一些代码吗?看起来它只考虑了输入的第一行。如果你去掉
“m”
标志会发生什么?回答标题中的问题:味道就是其中的一个。无论是什么味道,在多行模式下锚定(^
和$
)应该在行边界处匹配,这不是您想要的。事实上,两个输入都应该匹配,因为每个输入至少包含一行,其中没有“
或”
。某个地方似乎有一个bug,但是您应该可以通过删除“m”
标志来解决问题。您可以发布一些代码吗?看起来它只考虑输入的第一行。如果去掉“m”
标志会发生什么情况?回答标题中的问题:味道就是来自的味道。不管它是什么味道,在多行模式下,锚(^
和$
)应该在行边界匹配,这不是您想要的。事实上,您的两个输入都应该匹配,因为每个输入至少包含一行,其中没有“
或”
。似乎某个地方存在错误,但您应该能够通过删除“m”
标志来解决问题。
Hi my dog's collar is blue
this is because it is my favorite colour.
Hi
my dog's collar is blue
this is because it is my favorite colour.