关于浮点数的正则表达式?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于浮点数的正则表达式?相关的知识,希望对你有一定的参考价值。

我在网上找了许多的浮点正则表达式
可是都有一个问题就是可以输入多个小数点
哪位大虾给个只能输入一个小数点的正则表达式??

以下代码是以前网上找的,来源记不清了
String.prototype.isNumeric = function(flag)

//验证是否是数字
if(isNaN(this))

return false;

switch(flag)

case null: //数字
case "":
return true;
case "+": //正数
return /(^\+?|^\d?)\d*\.?\d+$/.test(this);
case "-": //负数
return /^-\d*\.?\d+$/.test(this);
case "i": //整数
return /(^-?|^\+?|\d)\d+$/.test(this);
case "+i": //正整数
return /(^\d+$)|(^\+?\d+$)/.test(this);
case "-i": //负整数
return /^[-]\d+$/.test(this);
case "f": //浮点数
return /(^-?|^\+?|^\d?)\d*\.\d+$/.test(this);
case "+f": //正浮点数
return /(^\+?|^\d?)\d*\.\d+$/.test(this);
case "-f": //负浮点数
return /^[-]\d*\.\d$/.test(this);
default: //缺省
return true;


判断是否是浮点
if("1234.455".isNumeric("f"))
//是浮点
参考技术A /^(\d*\.)?\d+$/

这个表达式认为“123.”或“123.123.123”不是有效的浮点数,认为“.123”或“123.123”或“123”是正确的浮点数。本回答被提问者采纳
参考技术B ^(\-|\+)?[\d]1,10\.[\d]1,10$

这种情况也可以匹配的

0.0000000

不过这样可以通过程序去判断!
参考技术C \d+(?:\.\d+)(?:[eE]\d+) 参考技术D 一个带小数点后两位的正则表达式
/^\d+\.\d2$/

常用正则表达式大全

非负整数:^d+$

正整数:[1][1-9][0-9]$

非正整数:^((-d+)|(0+))$

负整数:^-[0-9][1-9][0-9]$

整数:^-?d+$

非负浮点数:^d+(.d+)?$

正浮点数 : ^((0-9)+.[0-9][1-9][0-9])|([0-9][1-9][0-9].[0-9]+)|([0-9][1-9][0-9])$

非正浮点数:^((-d+.d+)?)|(0+(.0+)?))$

负浮点数:^(-((正浮点数正则式)))$

英文字符串:[2]+$

英文大写串:[3]+$

英文小写串:[4]+$

英文字符数字串:[5]+$

英数字加下划线串:^w+$

E-mail地址:[6]+(.[w-]+)*@[w-]+(.[w-]+)+$

URL:[7]+://(w+(-w+))(.(w+(-w+)))(?s)?$
或:http://[A-Za-z0-9]+.[A-Za-z0-9]+[/=?%-&_~`@[]‘:+!]*([<>""])*$

邮政编码:[8]d{5}$

中文:[9]+$

电话号码:^(((d{2,3}))|(d{3}-))?((0d{2,3})|0d{2,3}-)?[1-9]d{6,7}(-d{1,4})?$

手机号码:^(((d{2,3}))|(d{3}-))?13d{9}$

双字节字符(包括汉字在内):^x00-xff

匹配首尾空格:(^s)|(s$)(像vbscript那样的trim函数)

匹配HTML标记:<(.)>.</1>|<(.*) />

匹配空行: [s| ]*

提取信息中的网络链接:(h|H)(r|R)(e|E)(f|F) *= *(‘|")?(w||/|.)+(‘|"| *|>)?

提取信息中的邮件地址:w+([-+.]w+)@w+([-.]w+).w+([-.]w+)*

提取信息中的图片链接:(s|S)(r|R)(c|C) *= *(‘|")?(w||/|.)+(‘|"| *|>)?

提取信息中的IP地址:(d+).(d+).(d+).(d+)

提取信息中的中国手机号码:(86)013d{9}

提取信息中的中国固定电话号码:((d{3,4})|d{3,4}-|s)?d{8}

提取信息中的中国电话号码(包括移动和固定电话):((d{3,4})|d{3,4}-|s)?d{7,14}

提取信息中的中国邮政编码:[1-9]{1}(d+){5}

提取信息中的浮点数(即小数):(-?d*).?d+

提取信息中的任何数字 :(-?d*)(.d+)?

IP:(d+).(d+).(d+).(d+)

电话区号:/^0d{2,3}$/

腾讯QQ号:[10][1-9][0-9]$

帐号(字母开头,允许5-16字节,允许字母数字下划线):[11][a-zA-Z0-9_]{4,15}$

中文、英文、数字及下划线:[12]+$

匹配中文字符的正则表达式: [u4e00-u9fa5]

匹配双字节字符(包括汉字在内):[^x00-xff]

匹配空行的正则表达式: [s| ]*

匹配HTML标记的正则表达式:/<(.)>.</1>|<(.*) />/

sql语句:^(select|drop|delete|create|update|insert).*$

匹配首尾空格的正则表达式:(^s)|(s$)

匹配Email地址的正则表达式:w+([-+.]w+)@w+([-.]w+).w+([-.]w+)*


  1. 0-9 ??

  2. A-Za-z ??

  3. A-Z ??

  4. a-z ??

  5. A-Za-z0-9 ??

  6. w- ??

  7. a-zA-Z ??

  8. 1-9 ??

  9. u0391-uFFE5 ??

  10. 1-9 ??

  11. a-zA-Z ??

  12. u4e00-u9fa5_a-zA-Z0-9 ??


以上是关于关于浮点数的正则表达式?的主要内容,如果未能解决你的问题,请参考以下文章

用于匹配浮点数的正则表达式

Perl正则表达式提取浮点数

正则表达式从逗号分隔列表中删除连续重复(整数和/或浮点数)

java正则表达式验证整数浮点数和日期

java正则表达式验证整数浮点数和日期

正则表达式从bash脚本中的字符串中提取第一个浮点数