1.test :正则匹配字符串,如果成功则返回true,若果失败则返回false

格式:/正则表达式/.test(字符串)

默认吗匹配规则,区分大小写;如果不区分大小写,则加修饰符 i

例子:

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script>
var str = "abcdefsdashd";
// 判断字符中是否存在某个字符
var res1 = /a/;
var res2 = /d/;
var res3 = /cc/;
var res4 = /A/;
var res5 = /A/i;
console.log(res1.test(str)); // true 因为str中有字符a
console.log(res2.test(str)); // true 因为str中有字符d
console.log(res3.test(str)); // false 因为str中没有字符cc ,看清楚了,是两个c连在一起,不是一个c,所以结果是false;
console.log(res4.test(str)); // false 因为str中没有字符A,test()方法匹配是要区分大小写的
console.log(res5.test(str)); // true 因为res5中加了i,表示不区分大小写匹配,所以返回true
</script>
</head>
<body>
</body>
</html>

2. match :正则匹配字符串,成功则返回字符串组成的数组,失败则返回空对象null

格式:

str.match( 正则表达式 )                       // str 表示字符串

g:全局匹配修饰符,需要对整个字符串执行匹配规则

+:表示匹配至少重复一次

例子:

  <script>
var str = 'cxf234aa223sd5554233dgf';
// 匹配字符串中的字符,如果存在,则返回改字符串,如果不存在,则返回null
var res1 = /\d\d\d/;
var res2 = /\d/;
var res3 = /\d\d\d/g;
var res4 = /\d/g;
console.log(str.match(res1)); // 234
console.log(str.match(res2)); // 2
console.log(str.match(res3)); // 234,223,555,423
console.log(str.match(res4)); //2,3,4,2,2,3,5,5,5,4,2,3,3
</script>

3. search :正则匹配字符串,成功就返回当前字符串在 字符串中的位置(索引),失败则返回-1;

格式:

字符串.search(正则);

默认匹配规则,只要找到就停止;

例子:

 <script>
var str = 'abchhaddcysxjk';
//正则匹配字符串中字符,匹配到就返回改字符串在字符串中的位置,失败就返回-1,默认匹配到就停止
var res1 = /a/;
var res2 = /x/;
var res3 = /cy/;
var res4 = /h/;
var res5 = /d/g;
var res6 = /h/g;
var res7 = /xyz/;
console.log(str.search(res1)); // 0
console.log(str.search(res2)); // 11
console.log(str.search(res3)); // 8 如果是多个字符组成的字符串,则返回这个字符串在整个字符串中的位置
console.log(str.search(res4)); // 3
console.log(str.search(res5)); // 6 加全局匹配修饰符也没有用,匹配到就停止,匹配的是第一个字符的位置
console.log(str.search(res6)); // 3 加全局匹配修饰符也没有用,匹配到就停止,匹配的是第一个字符的位置
console.log(str.search(res7)); // -1 匹配失败,返回发-1
</script>

4. replace : 用新的字符串去替换匹配到的字符串

格式:

字符串.replace(/正则表达式/,新字符串)

例子:

 <script>
var str = 'abchhaddcysxjk';
// 用新字符串去替换匹配到的字符串
var res1 = /a/;
var res2 = /a/g;
var res3 = /cy/;
var res4 = /h/;
var res5 = /d+/g;
var res6 = /\w/g;
var res7 = /\w+/;
var res8 = /\w/;
console.log(str.replace(res1, 'A')); // Abchhaddcysxjk 不加全局修饰符的话,就只匹配一次
console.log(str.replace(res2, 'A')); // AbchhAddcysxjk 加全局修饰符,就全局匹配
console.log(str.replace(res3, '00000')); // abchhadd00000sxjk 新变量是什么就替换什么
console.log(str.replace(res4, '我是谁')); // abc我是谁haddcysxjk 新变量是什么就替换什么
console.log(str.replace(res5, 'D')); // abchhaDcysxjk 新变量是什么就替换什么
console.log(str.replace(res6, 'A')); // AAAAAAAAAAAAAA 匹配规则怎样就怎样匹配 ,全局匹配
console.log(str.replace(res7, 'A')); // A 匹配规则怎样就怎样匹配
console.log(str.replace(res8, 'A')); // Abchhaddcysxjk 匹配规则怎样就怎样匹配,局部匹配
</script>

5.判定一个字符串是否全部是数字:

     <script>
/*
\w: 字母,数字, 下滑线
\W: 非字母,数字,下滑线
\s: 空格 ,包括\n,\r,\f,\t,\v等
\S: 非空格 ,等于/[^\n\f\r\t\v]/
\d: 数字( 0-9 ) ,/\d/ = /[0-9]/
\D: 非数字 ,/\D/ = /[^0-9]/
\b 匹配一个单词的边界
\B 匹配一个单词的非边界
\n 匹配一个换行符
\r 匹配一个回车符
\t 匹配一个制表符
*/
// 判断这个字符串 是不是全是 数字
var str1 = '1';
var str2 = 'a1';
console.log(/\d/.test(str1)); // true 判断整个str有没有数字
console.log(/\d/.test(str2)); // true 判断整个str有没有数字
//\d: 只能判断 一个字符串 是否含有数字,并不能判断它全为数字
var str = '23423423';
//只要字符串中 不包含 任意 非数字 就能断定 这个字符串 是全部由数字组成的
if (/\D/.test(str)) {
console.log('不全是数字');
} else {
console.log('全是数字');
}
</script>

js 正则函数初级的更多相关文章

  1. js 正则函数初级之二

    1. 小括号在正则中: 1.1 小括号:表示分组 1.2 分组之后,,每个组都有一个序号,从左到右,依次为1,2,3.......:可以使用 RegExp.$1,RegExp.$2,RegExp.$3 ...

  2. node.js的初级使用

    node.js的初级使用 作为一个全栈开发员怎么能不会node.js了?至少得会用node搭载环境吧!话不多说直接开干! 一.下载与安装: 官网:http://nodejs.cn/ 中文文档:http ...

  3. js正则函数

    js的正则函数主要有有replace,match,test,search,exec. 首先对文中的变量进行说明: rgExp为包含正则表达式模式和可用标志的正则表达式对象.也可以是包含正则表达式模式和 ...

  4. 自己封装js组件 - 初级

    2天前抱着试试看的态度注册了此神博,心血来潮呕心沥血写了一篇关于vue 自定义组件的小文章 尼玛果然一个评论的没有!果然毫无人气!(当然了我这文章内容有限和大神们的比起来简直是粗制滥造...)索性我就 ...

  5. js正则函数match、exec、test、search、replace、split使用介绍集合

    match 方法 使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回. stringObj.match(rgExp) 参数 stringObj 必选项.对其进行查找的 String 对 ...

  6. js正则函数match、exec、test、search、replace、split使用介绍集合,学习正则表达式的朋友可以参考下。

    match 方法 使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回. stringObj.match(rgExp) 参数 stringObj 必选项.对其进行查找的 String 对 ...

  7. 新浪博客:html+css+原生JS+Ajax初级+mySql数据库——源码

    **************************************************************************************************** ...

  8. js正则函数match、exec、test、search、replace、split使用集合

    match 方法 使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回. stringObj.match(rgExp) 参数 stringObj 必选项.对其进行查找的 String 对 ...

  9. js正则函数match、exec、test、search、replace、split使用介绍

    match() 使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回. stringObj.match(rgExp) stringObj 必选项.对其进行查找的 String 对象或字符 ...

随机推荐

  1. [UE4]客户端-服务器模式

    客户端负责表现.服务器端负责数据. 以掉血为例: 一.玩家A砍了B一刀 二.服务器计算伤害,修改B的血量 三.把B的血量发给B,A砍B的动作发给所有能看到的玩家 四.客户端播放掉血量(如果允许可见), ...

  2. Zabbix配置参数优化

    概述:使用zabbix监控服务器已有一段时间,监控的服务器不到100台,发现刷新zabbix页面有卡顿的现象.而且经常报“Zabbix poller processes more than 75% b ...

  3. c#类的继承与包含的关系

    基础例子 class Dept { private string name; private Emp emp; public string getName() { return this.name; ...

  4. npm rebuild node-sass

    在使用npm安装node-sass的时候,可能会出现如下的报错: Error: ENOENT: no such file or directory, scandir 'D:\IdeaWork\code ...

  5. Doris与Hadoop yarn混合部署遇到的坑

    Doris默认端口 Yarn 默认端口: 如图,端口冲突,在混合部署的情况下,会出现2个问题: 1. Yarn ResourceManager启动不起来 解决办法:修改yarn.resourceman ...

  6. 利用(CMD)在Django中创建文件

    django项目的创建(在CMD中) 1.切换到你想要存储项目的位置,我这里保存在桌面上 cd Desktop 2.创建一个django项目,项目名叫guest django-admin startp ...

  7. retry之python重试机制

    安装 pip install retry Retry装饰器 retry(exceptions=Exception, tries=-1, delay=0, max_delay=None, backoff ...

  8. 转:Java对象序列化

    Java对象序列化 当两个进程在进行远程通信时,彼此可以发送各种类型的数据.无论是何种类型的数据,都会以二进制序列的形式在网络上传送.发送方需要把这个Java对象转换为字节序列,才能在网络上传送:接收 ...

  9. 实战ELK(1) 安装ElasticSearch

    第一步:环境 linux 系统 Java 1.8.0  elasticsearch-6.5.1 第二步:下载 2.1 JDK:https://mirrors.aliyun.com/centos/7.5 ...

  10. iPhone 获取指定格式的时间和日期

    1.  显示当前的年月日+时间 NSDate* date = [NSDate date]; NSDateFormatter* formatter = [[[NSDateFormatter alloc] ...