读书人

正则表达式 求高手帮忙解答一上

发布时间: 2012-09-12 09:21:30 作者: rapoo

正则表达式 求高手帮忙解答一下
里程字符串=字母 数字+double类型数据

规则:字母大小写均可,限制在1-5位
数字为整型 限制在1-5位 整数可为0
+(加号) 在该里程字符串中必须有 且 在里程字符串中只能出现一个加号(+)
并且加号前面是整型数据,加号后面是double类型数据
double类型数据 小数点前必须是3为数 可以有小数点 也可以没有小数点
如果有小数点,小数点后为1-3位小数


符合规则合法数据:DK10+010、DK100+100、DK1+000.231、DK0+900、dsg1+999.233、DK100+100、dk0+900
不合法数据:DK1df100+100、好好100+91、DK100+010.、HGF111221+78686

[解决办法]
Try:

^[a-zA-Z]{1,5}\d{1,5}\+\d{3}(\.\d{1,3})?$
[解决办法]

探讨
引用:

C# code

^(?:[a-zA-Z]{1,5}\d{1,5}\+(\d{3}.\d{1,3}|\d{3}))$



您写的正则表达式 还是有一个小小的问题 +加号后面是double类型 可以有小数点 也可以没有小数点 如果没有小数点 那么它就是3位的整数 如果有小数点 小数点前面必须是3位数,小数点后面必须是1-3位数 dk100+28070 这个……

读书人网 >C#

热点推荐