首页 > 其他分享 >正则基础

正则基础

时间:2023-06-30 10:26:07浏览次数:28  
标签:const log 匹配 基础 正则 test console hello

//匹配字母     const reg1=/[a-zA-Z]/     //匹配数字     const reg2=/\d/     //匹配非数字     const reg3=/\D/     //空格     const reg4=/\s/     //字母数字下划线     const reg5=/\w/     //特殊字符     const reg6=/[!@#$%>&*]/     //非字母匹配     const reg7=/^a-zA-Z/

/* *************************************正则*************************************************** */ //test()检测一个字符串是否与表达式匹配。返回布尔值 const reg8=/hello/ const str1='hello, world!' console.log(reg8.test(str1)) //match方法在字符串中搜索匹配正确表达式的内容,返回数组或者null console.log(str1.match(reg8)) //search 在字符串中搜索匹配正确表达式的内容,返回匹配索引或者-1 const reg9=/world/ console.log(str1.search(reg9)) //replace()将匹配正则表达式的内容替换为指定字符串,并返回指定字符串 console.log(str1.replace(reg9,'1111')) //split()根据正则表达式将字符串分散成数组 console.log(str1.split(/\s/)) /* *****************位置******************************* **************************************************/ //^匹配字符串开始的位置 const str2='hello world' const str3='AAAhello' const reg10=/hello/ const reg11=/^hello/ console.log(reg10.test(str2),reg10.test(str3)) console.log(reg11.test(str2),reg11.test(str3)) //举例:匹配手机号 //const phoneNum='1334567891' const phoneNum='13345678999' //const phoneNum='aaa123344555' const phoneReg=/^\d{10}$/ console.log(phoneReg.test(phoneNum)) //如上,$代表结束位置 //\b代表匹配单词边界 //\B代表非单词边界 const  reg12=/\bworld\b/ console.log(reg12.test(str2)) const str4='helloworld' console.log(reg12.test(str4))
/* ***************量词******************************************************************8 */ /* *匹配前一个字符出现0次或多次 /ab*c/匹配ac,abc,abbbc等

+匹配一个字符出现的1次或多次 /ab+c/匹配abc,abbc,不匹配ac
?匹配前一个字符串出现0次或1次 /ab?c/匹配ac abc,不匹配abbbbc

{n}匹配前一个字符刚好出现n次多了少了都不行

{n,}匹配前一个字符,至少n次

{n,m}出现n-m次 .任意字符  */ // * *********************************/贪婪匹配和惰性匹配********************************** */
/* const string='aaaaaa' const greedyPattern=/a+/   //贪婪匹配,尽可能多的匹配
const lazyPattern=/a+?/  //惰性匹配 只一个

console.log(string.match(greedyPattern)) console.log(string.match(lazyPattern)) */
/* ***********************************字符类别 ****************************************/ /* [abc]匹配的是a或b或c [a-z] [A-Z] [a-zA-z] [0-9] [0-9a-fA-F]//匹配16进制字符 [^abc]//非a非b非c  */ /* *************************************分组***************************************** */ /* (abc)匹配abc字符串 (ab)+匹配连续用ab字符串,如ab,abab,ababab等 (a|b)  等同于[ab] (abc|def) */ /* ******************************************捕获********************************************* */
/* 捕获:小括号的嵌套 (a(b)c)分组里面又有一个分组,就是所谓的捕获 */ /* *****************************************修饰符***************************************** */ //1、不区分大小写 const reg13=/hello/ig console.log(reg13.test('hello')) //2、全局匹配g 是global 全球 全局的所有的douhuibeipipei console.log("hello world,Hellow".match(reg13)) //3、m代表多行匹配 const pattern=/^hello/im; console.log("hellow\nhellohello".match(pattern));//输出:['hello','hello'] console/log()

标签:const,log,匹配,基础,正则,test,console,hello
From: https://www.cnblogs.com/yaokuaile/p/17515870.html

相关文章

  • Kubernetes编程——client-go基础—— 深入 API Machinery —— REST 映射
    深入APIMachinery——REST映射 GVK与GVR之间的映射关系被称为REST映射。我理解意思是说:在Kubernetes中,RESTMapping(REST映射)用于将GroupVersionKind(GVK)与GroupVersionResource(GVR)之间建立映射关系。......
  • Nginx 常用的基础配置(web前端相关方面)
    基础配置userroot;worker_processes1;events{worker_connections10240;}http{log_format'$remote_addr-$remote_user[$time_local]''"$request"$sta......
  • R语言随机波动模型SV:马尔可夫蒙特卡罗法MCMC、正则化广义矩估计和准最大似然估计上证
    全文链接:http://tecdat.cn/?p=31162最近我们被客户要求撰写关于SV模型的研究报告,包括一些图形和统计输出本文做SV模型,选取马尔可夫蒙特卡罗法(MCMC)、正则化广义矩估计法和准最大似然估计法估计。模拟SV模型的估计方法: sim<-svsim(1000,mu=-9,phi=0.97,sigma=0.15)......
  • 【numpy基础】--数组过滤
    在numpy中,数组可以看作是一系列数值的有序集合,可以通过下标访问其中的元素。处理数组的过程中,经常需要用到数组过滤功能。过滤功能可以在处理数据时非常有用,因为它可以使数据更加干净和可读性更强。例如,在进行数据分析时,通常需要去除异常值,过滤掉不必要的元素可以使数据更加易于......
  • 第10.3篇 html基础标签
    HTML一、HTML简介1.什么是HTMLHTML:HyperTextMarkupLanguage,超文本标记语言。作用:编写网页。2.写一个简单的HTML<html><head><title>pagetitle</title></head><body><fontcolor="red">hello,kitty&......
  • Java基础
    Java基础1.注释、标识符、关键字1.单行//2.多行/**/3.文档注释JavaDoc/***/4.标识符_关键词不可以作为变量名5.标识符_只能以字母\$\_开头6.变量名是大小写敏感的2.数据类型1.强类型语言_变量的使用严格符合规定(安全性高)2.基本类型......
  • [C#基础学习]关键字Ref
    相当于C++中传参时的星号,例如:voidswap(int*a,int*b){intt=a;a=b;b=t;}上述会直接改变a和b的值,不需要交换。原因是其作为指针直接指向a和b的地址并修改。而C#中则是voidswap(refinta,refintb){ intt=a;a=b;b=t;}......
  • 基础小知识:RCS
    原作者:https://mp.weixin.qq.com/s/w4UACZL-Nl1WS_dfEN4gAgRCS,称为雷达散射截面积,也称反射面积,也称散射面积,也可能有其他称呼,但是基本上:在雷达中,谈到目标的面积时说的都是这个。一、RCS怎么回事接触过雷达相关书籍的朋友会发现,这个词一般在介绍雷达方程的部分来进行介绍。那......
  • 网络基本认知(1)--网络基础知识
    专业和班级信息与计算科学成绩 姓名lhk学号1225课程名称计算机网络实验名称网络基本认知(1)--网络基础知识实验目的和要求理解和掌握有关网络的概念、分类、组成等基本知识。通过使用网络,了解网络的基本功能。网络性能对......
  • Java基础-Day06
    Java基础-Day06多维数组如何理解二维数组?数组属于引用数据类型数组的元素也可以是引用数据类型一个一维数组A的元素如果还是一个一维数组类型的,则次数组称为二维数组二维数组的属性:int[][]arr3=newint[][]{{1,2,3,4},{4,5,6,7,8},{9,10}};Syste......