你不得不知的Javascript正则表达式

了解几个简单的正则表达式还是很容易的,也非常有必要。


正则表达式(regular expression):

正则表达式用于在一个字符串中找到确定的字串或模式。

例如:
如果我们想在“The dog chased the cat”字符串中找到“the”,我们可以用这个表达式:/the/gi

让我们分开来理解 :

/ 是正则表达式的开始.

the 是我们想要匹配的模式串.

/ 是正则表达式的结束.

g 代表global(全局,全部), 就是找到字符串中所有与the匹配的,不只是第一个.

i 代表ignore 忽略大小写(uppercase or lowercase) 。

看下面的例子:

var testString = "Ada Lovelace and Charles Babbage designed the first computer and the software that would have run on it.";

// Example1
var expressionToGetSoftware = /software/gi;
var softwareCount = testString.match(expressionToGetSoftware).length;
//返回1  

// Example2
var expression = /and/gi;
var andCount = testString.match(expression).length;
//返回2

正则表达式查找数字

我们可以通过正则表达式的选择器来选择特定类型的值。

一种选择器就是数字选择器 \d ,用来检索一个串中的数字(例如0到9).

在Javascript的语法格式为:/\d/g

在选择器后面加一个+号可以匹配多个数字:/\d+/g

var testString = "There are 3 cats but 4 dogs.";

var expression = /\d+/g;//选择多个数字

var digitCount = testString.match(expression).length;
//返回2

查找空格

我们同样可以使用 \s选择器来查找串种的空格 。

此空格字符不仅包括 ” ” (space), 还有\r , \n , \t , 和\f (换页).

表达式:/\s+/g

var testString = "How many spaces are there in this sentence?";

var expression = /\s+/g; 

var spaceCount = testString.match(expression).length;
//返回7

反转正则表达式

你可以大写选择器来达到相反的效果。

例如:\s 匹配空格, 但是\S会匹配所有不是空格的东西。

例子:

用 /\S/g 来数在 testString字符串中非空格的字符个数。

var testString = "How many non-space characters are there in this sentence?";

var expression = /\S/g; 

var nonSpaceCount = testString.match(expression).length;
//返回49
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值