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. Ajax中最有名axios插件(只应用于Ajax)(post方法,官网写错了,应是字符串格式)

    /* axios v0.18.0 | (c) 2018 by Matt Zabriskie */!function(e,t){"object"==typeof exports&am ...

  2. ospf精确宣告地址

    ospf的一点小问题 http://bbs.51cto.com/thread-881459-1.html 参照博客地址 network 172.20.1.0 0.0.0.3 area 0 networ ...

  3. Maven的classifier作用

    classifier可以是任意的字符串,用于拼接在GAV之后来确定指定的文件. 可用于区分不同jdk版本所生成的jar包 <dependency> <groupId>net.s ...

  4. [UE4]Text Block文字字体偏移

    这样看起来就像是真正的垂直居中对齐了.

  5. java中序列化的简单认识

    一.什么是序列化 Java平台允许我们在内存中创建可复用的Java对象,但一般情况下,只有当JVM处于运行时,这些对象才可能存在,即,这些对象的生命周期不会比JVM的生命周期更长.但在现实应用中,就可 ...

  6. javascript-添加 class 类 和 移出 class 类 方法

    /* 添加 class 类 和 移出 class 类 方法*/ function addClass(element, className) { if(!new RegExp("(^|\\s) ...

  7. Codeforces Round #493 (Div. 1)

    A. /* 发现每次反转或者消除都会减少一段0 当0只有一段时只能消除 这样判断一下就行 */ #include<cstdio> #include<algorithm> #in ...

  8. 微服务、SOA 和 API对比与分析

    摘要: 对比微服务架构和面向服务的架构(SOA)是一个敏感的话题,常常引起激烈的争论.本文将介绍这些争论的起源,并分析如何以最佳方式解决它们.然后进一步查看这些概念如何与 API 管理概念结合使用,实 ...

  9. Python并发编程二(多线程、协程、IO模型)

    1.python并发编程之多线程(理论) 1.1线程概念 在传统操作系统中,每个进程有一个地址空间,而且默认就有一个控制线程 线程顾名思义,就是一条流水线工作的过程(流水线的工作需要电源,电源就相当于 ...

  10. Javascript强制转换

    Javascript强制转换 Javascript强制转换强制转换一共有五种转换方式,各有各的用处,希望大家在实际的使用中灵活运用,不要死板. <!DOCTYPE html> <ht ...