我对自定义小数的定义 =>数字可以表示为 (p,s),其中 p 是精度,s 是比例,然后描述关于精度和比例的所有内容。如果您需要在小数部分存储超过八位的小数,请使用自定义小数。最大小数位数为 29,最大精度为 30。数字的非小数部分最大为 29 位。
P 和 S 可能不同...
假设 P= 18 S=12 即/ (P,S) = (18,12)
整数长度 = 12
小数长度=18
一段代码
String regExprCD = "^-?\\d{1,"+intLength+"}(?>\\.\\d{0,"+fractionalLength+"})?$";
info("regExprCD = "+regExprCD );
if (value.matches(regExprCD ) || value.isEmpty()){
Window.alert("Valid CUSTOM_DECIMAL value");
}else{
Window.alert("Valid CUSTOM_DECIMAL value");
}
我尝试遵循正则表达式,但错误出现在“正则表达式中的语法错误”页面上
^-?\\d{1,"+intLength+"}(?>\\.\\d{0,"+fractionalLength+"})?$
这是允许以下情况的完美正则表达式:
正则表达式应接受以下自定义小数:
123456789012345678
1234567.1234567890
1.123456789012
1234567890.1234567
12345678901234567。
12345。
正则表达式不应接受以下自定义小数:
12345678901234567890:原因 P > 18 :: P 不应大于 18
1234567.1234567890123 : 原因 s>12 : :: S 不应大于 12
.1 或 .1232 :: 无效
我使用^-?\\d{1,"+intLength+"}(?>\\.\\d{0,"+fractionalLength+"})?$
了这个正则表达式。
这个正则表达式在示例 java 程序中工作正常。不在 GWT 中工作
在网页上抛出错误(在 GWT 中开发)::“正则表达式中的语法错误”
intLength 和 fractionalLength 的数据类型应该是什么?整数或字符串?
哪个是完美的正则表达式?
在此问题上的任何帮助或指导将不胜感激。