正则表达式

在 JavaScript 中,正则表达式通常用于两个字符串方法 : search()replace()

search() : 用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串,并返回子串的起始位置。
replace() : 用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。

一、正则表达式修饰符

修饰符描述
i搜索不区分大小写
g执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。
m执行多行匹配
var str = "Visit Runoob!"; 
var n = str.search(/Runoob/i);  // 6

二、正则表达式模式

  1. 数字:[0-9] ==> \d
  2. 非数字:[^0-9] ==> \D
  3. 字母:[A-Za-z]
  4. 字母数字或下划线:[A-Za-z0-9_] ==> \w
  5. 非字母数字或下划线:[^a-z0-9A-Z_] ⇒ \W
  6. 汉子:[\u4e00-\u9fa5]
  7. 空字符:\s 包括:空格,tab ... ...
  8. 通配符:. 下标点,等效于任何字符

三、使用test()

test() 方法是一个正则表达式方法。

test() 方法用于检测一个字符串是否匹配某个模式,如果字符串中含有匹配的文本,则返回 true,否则返回 false。

四、exec()

exec() 方法是一个正则表达式方法。

exec() 方法用于检索字符串中的正则表达式的匹配。该函数返回一个数组,其中存放匹配的结果。如果未找到匹配,则返回值为 null。

五、例子:

不能输入汉字:

<input type="text" onkeyup="value=value.replace(/[\u4e00-\u9fa5]/g,'')" />

只能输入数字、字母和汉字

<input type="text" onkeyup="value=value.replace(/[^\a-\z\A-\Z0-9\u4e00-\u9fa5]/g,'')" />

js限制input只能输入纯数字

<input type="text" class="input" />

// input框只能输入数字
$('.input').off('input').on('input',function(){
	var reg = /[^\d]/g;
	var val = $(this).val()
	if(reg.test(val)){
		$('.changetime').val(val.replace(reg,''))
	}
})

可以不输入,若输入只能是正整数(>0的整数)

<input type="text" id="content" />


var reg = /^$|^[1-9]\d*$/;

$("#content").change(function() {
	if (!reg.exec($("#content").val())) {
		alert("请输入大于0的整数");
	}
});
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值