正则表达式在 zul -ZK 中不起作用
Regex not working in zul -ZK
我正在与 Java 和 ZK 合作。尝试使用正则表达式作为文本框的约束。
这是正则表达式:^[0-9]{1,9}(?:\.[0-9]{1,3})?$
。
它在 Java 中工作正常,但在 zul textbox
中使用时,出现错误:Unknown constraint: ^[0-9]{1
请查看随附的屏幕截图:
正则表达式的有效值-
121245.121(3 digits after decimal is valid)
2145.11
0.23
5748579
无效值-
.111
45445.454545(3 digits after decimal is valid)
-1545.2
22..
zul中的代码如下-
<textbox xmlns:w="client" id="bal" maxlength="12" tooltiptext="Balance" constraint="^[0-9]{1,9}(?:\.[0-9]{1,3})?$">
ZK Fiddler 可以在以下位置找到:http://zkfiddle.org/sample/2c9e93q/2-Textbox-regex-issue
谁能帮我解决这个问题?
我没有修复正则表达式(它似乎不起作用),但要在约束中使用你的正则表达式,你必须将它包含在 /:[=15= 之间]
<textbox xmlns:w="client" id="bal" maxlength="12" tooltiptext="Balance"
constraint="/^[0-9]{1,9}(?:\.[0-9]{1,3})?$/"/>
演示:http://zkfiddle.org/sample/2bcm8bj/2-Textbox-regex-issue
来自doc:
To specify a regular expression, you may have to use the character /
to enclose the regular expression as follows.
<textbox constraint="/.+@.+\.[a-z]+/"/>
作为@RC。在上面的答案中提到, regex delimiters (/<pattern>/
) 需要在 pattern
属性值中定义一个正则表达式。但是,您的正则表达式将允许像 67\k78
这样的值,因为 \
定义了文字反斜杠,点代表除换行符之外的任何字符。
正确的正则表达式是
<textbox constraint="/^[0-9]{1,9}(?:[.][0-9]{1,3})?$/" xmlns:w="client" id="bal" maxlength="12" tooltiptext="Balance">
^ ^^^ ^
注意点放在字符中时不需要转义 class [.]
.
我正在与 Java 和 ZK 合作。尝试使用正则表达式作为文本框的约束。
这是正则表达式:^[0-9]{1,9}(?:\.[0-9]{1,3})?$
。
它在 Java 中工作正常,但在 zul textbox
中使用时,出现错误:Unknown constraint: ^[0-9]{1
请查看随附的屏幕截图:
正则表达式的有效值-
121245.121(3 digits after decimal is valid)
2145.11
0.23
5748579
无效值-
.111
45445.454545(3 digits after decimal is valid)
-1545.2
22..
zul中的代码如下-
<textbox xmlns:w="client" id="bal" maxlength="12" tooltiptext="Balance" constraint="^[0-9]{1,9}(?:\.[0-9]{1,3})?$">
ZK Fiddler 可以在以下位置找到:http://zkfiddle.org/sample/2c9e93q/2-Textbox-regex-issue
谁能帮我解决这个问题?
我没有修复正则表达式(它似乎不起作用),但要在约束中使用你的正则表达式,你必须将它包含在 /:[=15= 之间]
<textbox xmlns:w="client" id="bal" maxlength="12" tooltiptext="Balance"
constraint="/^[0-9]{1,9}(?:\.[0-9]{1,3})?$/"/>
演示:http://zkfiddle.org/sample/2bcm8bj/2-Textbox-regex-issue
来自doc:
To specify a regular expression, you may have to use the character / to enclose the regular expression as follows.
<textbox constraint="/.+@.+\.[a-z]+/"/>
作为@RC。在上面的答案中提到, regex delimiters (/<pattern>/
) 需要在 pattern
属性值中定义一个正则表达式。但是,您的正则表达式将允许像 67\k78
这样的值,因为 \
定义了文字反斜杠,点代表除换行符之外的任何字符。
正确的正则表达式是
<textbox constraint="/^[0-9]{1,9}(?:[.][0-9]{1,3})?$/" xmlns:w="client" id="bal" maxlength="12" tooltiptext="Balance">
^ ^^^ ^
注意点放在字符中时不需要转义 class [.]
.