我的价格验证正则表达式有问题。
我的模式不接受我想要的值,例如:
- 101.00
- 110.00
- 1000.00
- 0.50
我的模式接受以下值:
- 1.00
- 1.10
- 1.11
- 11.11
现在,我的模式是^([1-9]+\.)(\d{2})$
。
所需的正则表达式不应接受“零”值,例如0.00
或0
。
我的价格验证正则表达式有问题。
我的模式不接受我想要的值,例如:
我的模式接受以下值:
现在,我的模式是^([1-9]+\.)(\d{2})$
。
所需的正则表达式不应接受“零”值,例如0.00
或0
。
尝试
java.util.Date
//Import statement
import java.util.Calendar;
import java.util.Date;
import org.apache.commons.lang.time.DateUtils;
//Flexible search query
final FlexibleSearchQuery flexibleSearchQuery = new FlexibleSearchQuery(" SELECT * FROM CUSTOMER AS c WHERE c.timestamp < ?days")
flexibleSearchQuery.addQueryParameter("days",substractDaysFromDate(30));
flexibleSearchService.search(flexibleSearchQuery);
//method to get date difference
private Date subtractDaysFromCurrentDate(int days)
{
Calendar cal = Calendar.getInstance();
cal.add(Calendar.DATE,-days);
cal = DateUtils.truncate(cal,Calendar.DATE);
return cal.getTime();
}
,
表达式/^(0\.(?!00)|(?!0)\d+\.)\d\d$/
满足您的所有要求(到目前为止)。将 0.x 和 y.z 作为两种选择来处理似乎更容易。