JavaScript|正则表达式以及search、text、replace的应用

JavaScript|正则表达式以及search、text、replace的应用

1.正则表达式

正则表达式是由一个字符序列形成的搜索模式。当你在文本中搜索数据时,你可以用搜索模式来描述你要查询的内容。正则表达式可以是一个简单的字符,或一个更复杂的模式。正则表达式可用于所有文本搜索和文本替换的操作。

语法:/正则表达式主体/修饰符(可选)

主体即为搜索的内容

修饰符可以是:

  • i :执行对大小写不敏感的匹配
  • g :执行全局匹配,即查找所有匹配而非再找到第一个匹配后停止
  • m :执行多行匹配

括号:

  • [abc] :查找方括号之间的任何字符
  • [0-9] :查找任何从0-9的数字
  • (x|y) :查找任何以|分隔的选项

元字符:

  • \d :查找数字
  • \s :查找空白字符
  • \b :匹配单词边界
  • \u1100 :查找以16进制数1100规定的Unicode字符

量词:

  • n+ :匹配任何包含至少一个n的字符串
  • n* :匹配任何包含至少0个n的字符串
  • n? :匹配任何包含0个或一个n的字符串

例如:/Hello/i就是一个正则表达式,Hello是主体同于检索,i是修饰符,表示不区分大小写。

2.search方法使用正则表达式

返回找到正则表达式主体的位置:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>正则表达式</title>
</head>
<body>

<script>
  var x = /Hello/i;
  var s = "javascript,hello,world,hello";
  document.write(s.search(x));
</script>

</body>
</html>

在这里插入图片描述

3.replace方法使用正则表达式

查找正则表达式主体, 并且修改为给定内容:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>正则表达式</title>
</head>
<body>

<script>
  var x = /Hello/i; //正则表达式,主体是Hello,i表示不区分大小写
  var s = "javascript,hello,world,hello";
  document.write(s.search(x) + "<br>");  //利用search方法在s中查找Hello,并且不区分大小写
</script>

<script>
  var x = /Hello/; //正则表达式,主体是Hello
  var s = "javascript,hello,world,Hello";
  document.write(s.replace(x,"ok!"));  //利用replace在s中查找Hello,并且修改为"ok!"
</script>

</body>
</html>

在这里插入图片描述

3.text方法使用正则表达式

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

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>正则表达式</title>
</head>
<body>

<script>
  var s1 = "hello,world!";
  var s2 = "Hello,world!";
  var zz = /Hello/;
  document.write(zz.test(s1) + "<br>"); //利用text判断s1中是否有子串与zz匹匹配
  document.write(zz.test(s2) + "<br>"); //利用text判断s2中是否有子串与zz匹匹配
</script>

</body>
</html>

这个的结果分别是false和true。


人生没有白走的路,每一步都算数!

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Alan_Lowe

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值