js 常用正则

2016-09-09

整数或者小数:

^[0-9]+\.{0,1}[0-9]{0,2}$

只能输入数字:

"^[0-9]*$"

。

只能输入

n

位的数字:

"^\d{n}$"

。

只能输入至少

n

位的数字:

"^\d{n,}$"

。

只能输入

m~n

位的数字:。

"^\d{m,n}$"

只能输入零和非零开头的数字:

"^(0|[1-9][0-9]*)$"

。

只能输入有两位小数的正实数:

"^[0-9]+(.[0-9]{2})?$"

。

只能输入有

1~3

位小数的正实数:

"^[0-9]+(.[0-9]{1,3})?$"

。

只能输入非零的正整数:

"^\+?[1-9][0-9]*$"

。

只能输入非零的负整数:

"^\-[1-9][]0-9"*$

。

只能输入长度为

3

的字符:

"^.{3}$"

。

只能输入由

26

个英文字母组成的字符串:

"^[A-Za-z]+$"

。

只能输入由

26

个大写英文字母组成的字符串:

"^[A-Z]+$"

。

只能输入由

26

个小写英文字母组成的字符串:

"^[a-z]+$"

。

只能输入由数字和

26

个英文字母组成的字符串:

"^[A-Za-z0-9]+$"

。

只能输入由数字、

26

个英文字母或者下划线组成的字符串:

"^\w+$"

。

验证用户密码:

"^[a-zA-Z]\w{5,17}$"

正确格式为:以字母开头,长度在

6~18

之间,

只能包含字符、数字和下划线。

验证是否含有

^%&‘,;=?$\"

等字符:

"[^%&‘,;=?$\x22]+"

。

只能输入汉字:

"^[\u4e00-\u9fa5]{0,}$"

验证

Email

地址:

"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$"

。

验证

InternetURL

:

"^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$"

。

验证电话号码:

"^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$"

正确格式为:

"XXX-XXXXX

XX"

、

"XXXX-XXXXXXXX"

、

"XXX-XXXXXXX"

、

"XXX-XXXXXXXX"

、

"XXXXXXX"

和

"XXX

XXXXX"

。

验证身份证号(

15

位或

18

位数字):

"^\d{15}|\d{18}$"

。

验证一年的

12

个月:

"^(0?[1-9]|1[0-2])$"

正确格式为:

"01"

~

"09"

和

"1"

~

"12"

。

验证一个月的

31

天:

"^((0?[1-9])|((1|2)[0-9])|30|31)$"

正确格式为;

"01"

~

"09"

和

"1"

~

"31"

。

匹配中文字符的正则表达式:

 [\u4e00-\u9fa5]

匹配双字节字符

(

包括汉字在内

)

:

[^\x00-\xff]

应用:计算字符串的长度(一个双字节字符长度计

2

,

ASCII

字符计

1

)

String.prototype.len=function(){return this.replace(/[^\x00-\xff]/

g,"aa").length;}

匹配空行的正则表达式:

\n[\s| ]*\r

匹配

html

标签的正则表达式:

<(.*)>(.*)<\/(.*)>|<(.*)\/>

匹配首尾空格的正则表达式:

(^\s*)|(\s*$)

应用:

javascript

中没有像

vbscript

那样的

trim

函数,我们就可以利用这个表达式

来实现,如下:

String.prototype.trim = function()

{

return this.replace(/(^\s*)|(\s*$)/g, "");

}

利用正则表达式分解和转换

IP

地址:

下面是利用正则表达式匹配

IP

地址,并将

IP

地址转换成对应数值的

Javascript

程序:

function IP2V(ip)

{

re=/(\d+)\.(\d+)\.(\d+)\.(\d+)/g //

匹配

IP

地址的正则表达式

if(re.test(ip))

{

return RegExp.$1*Math.pow(255,3))+RegExp.$2*Math.pow(255,2))+RegEx

p.$3*255+RegExp.$4*1

}

else

{

throw new Error("Not a valid IP address!")

}

}

不过上面的程序如果不用正则表达式,

而直接用

split

函数来分解可能更简单,

程序如下:

var ip="10.100.20.168"

ip=ip.split(".")

alert("IP

值是:

"+(ip[0]*255*255*255+ip[1]*255*255+ip[2]*255+ip[3]*

1))

匹配

Email

地址的正则表达式:

\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)

*

匹配网址

URL

的正则表达式:

http://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?

利用正则表达式限制网页表单里的文本框输入内容:

用正则表达式限制只能输入中文:

onkeyup="value=value.replace(/[^\u4E00-\u

9FA5]/g,‘‘)" onbeforepaste="clipboardData.setData(‘text‘,clipboard

Data.getData(‘text‘).replace(/[^\u4E00-\u9FA5]/g,‘‘))"

用正则表达式限制只能输入全角字符:

 onkeyup="value=value.replace(/[^\uFF0 

0-\uFFFF]/g,‘‘)" onbeforepaste="clipboardData.setData(‘text‘,clipb

oardData.getData(‘text‘).replace(/[^\uFF00-\uFFFF]/g,‘‘))"

用正则表达式限制只能输入数字:

onkeyup="value=value.replace(/[^\d]/g,‘‘)

 "onbeforepaste="clipboardData.setData(‘text‘,clipboardData.getDat

a(‘text‘).replace(/[^\d]/g,‘‘))"

用正则表达式限制只能输入数字和英文:

onkeyup="value=value.replace(/[\W]/g,

‘‘) "onbeforepaste="clipboardData.setData(‘text‘,clipboardData.get

Data(‘text‘).replace(/[^\d]/g,‘‘))"

匹配中文字符的正则表达式:

 [\u4e00-\u9fa5]

评注:匹配中文还真是个头疼的事,有了这个表达式就好办了

匹配双字节字符

(

包括汉字在内

)

:

[^\x00-\xff]

评注:可以用来计算字符串的长度(一个双字节字符长度计

2

,

ASCII

字符计

1

)

匹配空白行的正则表达式:

\n\s*\r

评注:可以用来删除空白行

匹配

HTML

标记的正则表达式:

<(\S*?)[^>]*>.*?|<.*? />

评注:

网上流传的版本太糟糕,

上面这个也仅仅能匹配部分,

对于复杂的嵌套标记依旧无能

为力

匹配首尾空白字符的正则表达式:

^\s*|\s*$

评注:可以用来删除行首行尾的空白字符

(

包括空格、制表符、换页符等等

)

,非常有用的

表达式

匹配

Email

地址的正则表达式:

\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)

*

评注:表单验证时很实用

匹配网址

URL

的正则表达式:

[a-zA-z]+://[^\s]*

评注:网上流传的版本功能很有限,上面这个基本可以满足需求

js 常用正则

常用的正则表达式,需要的拿去

时间: 2024-10-14 04:24:39

js 常用正则的相关文章

js常用正则收藏

js的正则在使用时用在开头和结尾加'/' 例如: var letterOrNumber = /^[A-Za-z0-9]+$/;// 仓位只能 包含字母和数字        var seatValidator = letterOrNumber.test(seatID); if (seatValidator) {// 由字母和数字组成                if (seatID.length <1 || seatID.length >2) {// 长度限制                 

js常用正则整理

//校验是否全由数字组成 function isDigit(s) { var patrn=/^[0-9]{1,20}$/; if (!patrn.exec(s)) return false return true } //校验登录名:只能输入5-20个以字母开头.可带数字.“_”.“.”的字串 Java代码 复制代码 function isRegisterUserName(s) { var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/; if (!p

js常用正则收集

1:非纯空白字符串且长度大于1:     /^\s*\S+[\s\S]*$/ , 右侧可以正常匹配:"     11 1        1     a      "  ."    1      aa" ."1      aa" 正则解读:开头可以有空格,然后后续必须有至少一个字符.后续可以空格和字符任意组合: 适合各类输入框的   必填 .非空.中间可以有空格 原文地址:https://www.cnblogs.com/zhilingege/p/8

JS常用正则表达&amp;RegExp对象

本来想细致整理一下正则表达式和RegExp对象的,但是发现网上完善的教程一抓一大把,于是这篇文章只会记录一些常常用到的正则表达式以及稍做分析. *转义:/b/匹配字符b,/\b/匹配单词边界,/a*/匹配a.aa.aaa...,/a\*/只匹配a*. *双重转义: 这两个模式起的作用是一样的,但从普通正则表达式到RegExp对象,需要去掉//,并且对\进行转义成为\\,\\则需要变成\\\\ 1.非负整数:/^\d+$/,定死开头与结尾,\d匹配任意一个数字,+意为前面的元字符/[]/()出现至

JS常用正则(转)

作者:zxin出处:http://zxin.cnblogs.com/ 一.校验数字的表达式 1 数字:^[0-9]*$ 2 n位的数字:^\d{n}$ 3 至少n位的数字:^\d{n,}$ 4 m-n位的数字:^\d{m,n}$ 5 零和非零开头的数字:^(0|[1-9][0-9]*)$ 6 非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$ 7 带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,2})?$ 8 正数.负数.和小数:^(\-|

js常用正则

1. 匹配一串字符中的数字 <span class="money" doubly-currency="USD">$15.89 USD</span> var str = $(".money").text(); console.log(Number(str.replace(/[^0-9]/g,"")/100)); // “.”被替代成了空,所以为了保持原值大小,除以100// /[^0-9]/g   全局匹

js常用函数和常用技巧

学习和工作的过程中总结的干货,包括常用函数.常用js技巧.常用正则表达式.git笔记等.为刚接触前端的童鞋们提供一个简单的查询的途径,也以此来缅怀我的前端学习之路. PS:此文档,我会持续更新. Ajax请求 jquery ajax函数 我自己封装了一个ajax的函数,代码如下: var Ajax = function(url, type success, error) { $.ajax({ url: url, type: type, dataType: 'json', timeout: 100

jQuery常用正则验证

jQuery常用正则验证  [转] 基础知识:JS中创建正则对象的方式:-使用RegExp()构造函数方式,如:var patten=new RegExp("s$");-使用正则直接量方式,如:var patten=/s$/;注意:就像字符串直接量被定义为包含在引号("")内的字符一样,正则表达式直接量也被定义为包含在一对斜杠(/)之间的字符:斜杠外末尾可以加正则全局标识符. 验证文字输入个数<script type="text/javascript

JS常用函数大全

免疫bodyclick方法 这个是个比较好的方法,一个弹出窗口,要设定在任何其他地方点击这个窗口会自动消失,但点这个窗口内部是没事的.那么就要用到这个方法了. // (对body点击产生效果免疫的部分, 阻止冒泡body事件) // 通过ID屏蔽->@args(event, targetID) function blockClickToBodyById(a,b){return b==$(a.target).prop("id")||$(a.target).parents("