QQ个性网:专注于分享免费的QQ个性内容

关于我们| 网站公告| 广告服务| 联系我们| 网站地图

搜索
编程 JavaScript Java C++ Python SQL C Io ML COBOL Racket APL OCaml ABC Sed Bash Visual Basic Modula-2 Logo Delphi IDL Groovy Julia REXX Chapel X10 Forth Eiffel C# Go Rust PHP Swift Kotlin R Dart Perl Ruby TypeScript MATLAB Shell Lua Scala Objective-C F# Haskell Elixir Lisp Prolog Ada Fortran Erlang Scheme Smalltalk ABAP D ActionScript Tcl AWK IDL J PostScript IDL PL/SQL PowerShell

Javascript正则表达式

日期:2025/03/31 17:24来源:未知 人气:56

导读:一、正则表达式正则表达式用于对字符串模式匹配及检索替换,是对字符串执行模式匹配的强大工具。二、创建正则表达式的方式字面量方式let str = "abcd"// 检测str是否包含字母c/c/.test(str) //输出true// 检测str是否包含字母c,变量写法let keyword = "c"let regex = eval(`/${keyword}/`) //eva......

一、正则表达式

正则表达式用于对字符串模式匹配及检索替换,是对字符串执行模式匹配的强大工具。

二、创建正则表达式的方式

  1. 字面量方式

    let str = "abcd"// 检测str是否包含字母c/c/.test(str) //输出true// 检测str是否包含字母c,变量写法let keyword = "c"let regex = eval(/${keyword}/) //eval函数将字符串转成表达式regex.test(str)

  2. Regex对象方式

    let str = "abcdabcd"// 检测str是否包含字母clet regex = new Regex('c')regex.test(str) // 输出true

字面量形式书写元字符时,只需要\x 构造函数方式书写元字符时,需要使用\x

三、匹配模式

五、分组

圆括号()

  1. 表示一个整体

    // abc d出现两次/abcd{2}/.test("abcdd") //true// abcd整体出现两次/(abcd){2}/.test("abcdabcd") //true

  2. 单独捕获

    let regex = /\d+(\w)\d+/let result = regex.exec("520H025") //拿到圆括号中匹配的内容console.log(result[0]) //输出H

当.出现在[]和()中就表示”. “字符

六、限定符

用来限定元字符出现的次数

var str = "你好Hello world1234";console.log(str.match(/\p{L}/gu))// 获取汉字console.log(str.match(/\p{sc=Han}/gu))

八、正则对象的方法

  1. test 验证字符串是不是符合规则
  2. exec 截取字符串里面符合正则规则的那一部分片段

    let str = "1234abcdabcd"console.log(/abcd/.exec(str))

在这里插入图片描述 返回一个数组: 0: 截取的符合正则的片段 index:从第几个位置开始截取的 input:从哪个字符串中截取的 groups: length:

不管有多个片段都只截取第一个片段 不管截取多少次都只截取第一个片段

贪婪模式: 当给一个符号使用限定符的时候,会尽可能多的捕获内容

let reg = /\d+/console.log(reg.exec("abcd1234")) //输出1234

非贪婪模式 当给一个符号使用限定符的时候,会按最小值捕获内容

let reg = /\d+?/console.log(reg.exec("abcd1234")) //输出1

九、字符串与正则表达式相关的方法

  1. search(字符串或正则)

    查找符合指定规则的字符串,如果存在,则返回对应位置的索引,如果不存在则返回-1

  2. replace(字符串或正则,新的内容)

    替换符合指定规则的字符串(1). 没有全局标识符g的时候,只能替换第一个查找到的内容,返回新的替换好的字符串(2). 有全局标识符g的时候,会把字符串中所有满足规则的内容全部替换,返回替换好的字符串

    Herrona

执行结果: 在这里插入图片描述

  1. match(字符串或正则)

    当正则表达式没有全局标识符g的时候,返回值与正则对象的exec方法一样当正则表达式有全局标识符g的时候,返回一个数组,里面是所有满足条件的内容

关于我们|网站公告|广告服务|联系我们| 网站地图

Copyright © 2002-2023 某某QQ个性网 版权所有 | 备案号:粤ICP备xxxxxxxx号

声明: 本站非腾讯QQ官方网站 所有软件和文章来自互联网 如有异议 请与本站联系 本站为非赢利性网站 不接受任何赞助和广告