正则3:正则表达式中的括号

ERA5 数据集下载(2025最新 可运行) 众所周知,ERA5数据集经过了更新,尤其是在API访问和下载方式上发生了变化。2025年版的ERA5数据集为气象研究人员提供了更高质量的历史气象数据。本文将介绍如何通过新的API接口下载最新的ERA5数据集。 阅读详情

1、分组

var regex = /(ab)+/g; 

var string = "ababa abbb ababab"; console.log( string.match(regex) ); // => ["abab", "ab", "ababab"]

 

1.1 数据分组提取替换

var regex = /(\d{4})-(\d{2})-(\d{2})/;

var string = "2017-06-12";

console.log(string.replace(regex, `$1$2$3`) );

使用replace函数进行匹配 RegExp 是构造函数的全局属性

var regex = /(\d{4})-(\d{2})-(\d{2})/; 

var string = "2017-06-12”; 

var result = string.replace(regex, function () {   

    return RegExp.$2 + "/" + RegExp.$3 + "/" + RegExp.$1; 

});

console.log(result);

使用replace函数的时候也可以把参数列出来

var regex = /(\d{4})-(\d{2})-(\d{2})/;

var string = "2017-06-12”;

var result = string.replace(regex, function (match, year, month, day) {   

    return month + "/" + day + "/" + year; 

});

console.log(result);

 

1.2 正则中匹配分组

假设有如下需求:匹配如下字符串,且要求前后的分割符号保持一致

var string2 = "2017/06/12”; 

var string3 = “2017.06/12"; 

var regex = /\d{4}(-|\/|\.)\d{2}\1\d{2}/; 

这里正则中的\1 就是表示前面分组中获取到的字符串

 

1.3 引用不存在的分组,会取到反向引用的字符本身

 

1.4 分组后面有量词,会取最后一个

 

 

 

2、分支结构

var regex = /^I love (JavaScript|Regular Expression)$/; 

console.log( regex.test("I love JavaScript") );

console.log( regex.test("I love Regular Expression") );

如果去掉括号

/^I love JavaScript|Regular Expression$/,

匹配字符串是 "I love JavaScript" 和 "Regular Expression",当然这不是我们想要的。

 

 

3、非捕获括号 (?:)

如果只想要括号最原始的功能,不涉及引用或反向引用,在括号最开头加上?:

var regex = /(?:ab)+/g; 

var string = "ababa abbb ababab”; 

console.log( string.match(regex) ); 

// => ["abab", "ab", "ababab"]

SCADA|KingSCADA通过组合框选择修改变量的值 《SCADA项目中组合框控件的使用方法》 本文详细介绍了SCADA系统中组合框(下拉框)控件的应用方法。通过具体示例演示如何实现:当选择"雷工笔记"时变量值为100,选择"雷工杂谈"时为200,选择"小李食代"时为300的功能。主要实现步骤包括:1)创建项目并添加组合框控件;2)设置Items选项及对应数值;3)创建内存变量;4)使用GetCurrentIndex()和GetItemData()方法;5)在选项变化事件中编写脚本。该控件在SCADA 阅读详情

相关推荐

云计算系统等保测评对象和指标选取

参考GBT22239-2019《基本要求》附录D 云计算应用场景说明。简要理解下图,主要是云计算系统安全保护责任分担原则和云服务模式适用性原则,指导后续的测评对象和指标选取。

ryanzzzzz的博客 4682

第三章 正则表达式括号的作用

不管哪门语言中都有括号。正则表达式也是一门语言,而括号的存在使这门语言更为强大。 对括号的使用是否得心应手,是衡量对正则的掌握水平的一个侧面标准。 括号的作用,其实三言两语就能说明白,括号提供了分组,便于我们引用它。 引用某个分组,会有两种情形:在JavaScript里引用它,在正则表达式里引用它。 本章内容虽相对简单,但我也要写长点。 ...

JavaAlliance 8418

FAST-LIO2实战:如何在无人机上部署并实现厘米级定位(附ROS配置全流程)

本文详细介绍了如何在无人机上部署FAST-LIO2激光雷达惯性里程计系统,以实现厘米级精确定位。内容涵盖从硬件选型(如激光雷达与机载计算机)、软件环境配置(ROS Noetic)、传感器标定,到FAST-LIO2参数调优、与PX4飞控集成以及实际飞行测试的全流程。重点解决了实时定位中的外参标定、数据同步等关键问题,为无人机在无GPS或复杂光照环境下提供稳定可靠的定位解决方案。

weixin_29062865的博客 251

正则表达式(全)

通过上面几个简单的示例,可以了解到常见的基础正则表达式的元字符主要包括以下几个^ 匹配输入字符串的开始位置。除非在方括号表达式中使用,表示不包含该字符集合。要匹配”^”字符本身,请使用"\^"$ 匹配输入字符串的结尾位置。如果设置了RegExp对象的 Multiline属性,则"$”也匹配'\n'或'\r’,。要匹配”$"字符本身,请使用”\$". 匹配除"\r\n"之外的任何单个字符\ 反斜杠,又叫转义字符,去除其后紧跟的元字符或通配符的特殊意义* 匹配前面的子表达式零次或多次。...

a_b_e_l_的博客 24万+

大数据实战:Python与MySQL在足球赔率分析中的高效应用

本文详细介绍了如何利用Python与MySQL进行大数据实战,实现足球赔率的高效分析。通过对比Excel处理的局限性,阐述了数据库在处理百万级数据时的速度优势。文章提供了从环境搭建、使用pymysql连接数据库、利用pandas进行数据清洗与分析,到构建自动化分析系统的完整流程,旨在帮助读者将大数据技术应用于实际业务场景,显著提升数据处理与洞察效率。

weixin_29080843的博客 448

Windows 11下ROS2 Humble与PyCharm无缝集成实战(避坑指南+完整配置流程)

本文详细介绍了在Windows 11系统下如何实现ROS2 Humble与PyCharm的无缝集成,包括环境准备、ROS2 Humble安装、PyCharm配置以及C++与Qt5混合开发的实战技巧。通过避坑指南和完整配置流程,帮助开发者高效搭建稳定的机器人开发环境,特别适合Windows平台的ROS2开发者。

weixin_28710999的博客 367

正则表达式括号的用法总结

括号的种类[]匹配单个字符{}匹配次数限定符()匹配分组分组和分支结构引用分组(提取数据)反向引用非捕获分组(?:ab)模式修饰符。

青哥的博客 6914

手写Socket Web服务器:深入HTTP协议底层原理

HTTP协议是Web通信的基石,其本质是一套严格定义的文本格式与状态交互规范。理解它需回归传输层——TCP连接建立、请求响应格式(如状态行、头/体分隔符\r\n\r\n)、字符编码与字节长度一致性等核心原理。这些知识直接决定CORS拦截、中文乱码、Content-Length错误等高频问题的排查效率。在现代框架封装日益厚重的今天,亲手用Socket实现一个可被Chrome识别的极简Web服务器,成为掌握Web运行机制最有效的实践路径。本文即以DebugLZQ经典案例为蓝本,还原从URI解析、DNS查询、So

weixin_40192258的博客 534

正则表达式

预定义字符: 所代表的字符 补充说明 \d 0-9 所有的数字 \D 0-9以外的字符 对\d的取反,即非数字 \w a-zA-Z0-9_ 字母、数字、下划线 \W 字母、数字、下划线以外的字符 对\w的取反 \s 空白符(空格符、制表符、换行符等) 各种不可见字符 \S 空白符以外的字符 对\s的取反 元字符: 释义 补充说明 [] 匹配一个字符,括号内字符是或者的关系 如[12a]匹配1或者2或者a [^] 取反,^要用在中括号的里边,并且

weixin_45560560的博客 665

硬方案——几种实用的恒流源电路设计方案,敬请收藏(运放、三极管在手,让你玩出多种花样)

0 引言 我们在信号测量、供电等应用场景时常会涉及到使用恒流源,以前觉得恒流源挺神奇的,研究了下实现方案,其实也没有多么高深(这里讨论的仅限于用在信号测量中的小电流恒流源设计),这里给出几个实用的恒流源电路设计方案。 1 恒流源电路设计 (1)使用三极管搭建的恒流源 (2)使用运放搭建的恒流源 (3)使用恒流二极管搭建的恒流源 pt100恒流源测温电路图_电子技术_电工之家 ...

数字世界 万物互联 9524

pytorch实现基本的logistic和softmax回归实验(手动+torch)

前提:不是前馈神经网络,没有隐藏层。 一:Logistic回归实验–人工构造数据集,手动构造模型 要求: 动手从0实现logistic回归,实现二分类,人工构造数据集,并分析loss、训练集、测试集的准确率。(要求从零实现二元交叉熵) 实验过程: 1.1人工构造数据集 1. # #自定义数据---训练集 2. num_inputs = 2 3. n_data = torch.ones(1500, num_inputs) # 数据的基本形态 4. x1 = torch.normal(2 * n_d

qq_37534947的博客 1万+

【数据处理】正则表达式中的括号

1. 小括号 () 是为了提取匹配的字符串。表达式中有几个()就有几个相应的匹配字符串。 (abc)?,表示这一组要么一起出现,要么不出现,出现则按此组内的顺序出现

小白兔的窝 2943

Floyd (弗洛伊德)算法简述

Floyd在1962年由Robert Floyd以其当前公认的形式出版。算法作为三个嵌套for循环的现代公式首先由Peter Ingerman在1962年描述。Floyd 算法是解决图论问题的比较经典的算法,是解决给定的加权图中顶点间的最短路径的一种算法,可以正确处理有向图的最短路径问题。

慕羽★的博客 2万+

正则表达式不匹配括号

正则表达式中涉及到分组的时候,匹配括号不匹配括号 (?:) 表示不匹配次括号 (?:($1)|($2)|($3)) 表示最外边的括号不匹配,里边的三个小括号匹配,但是下标不变$0 是空 $1 =$1 $2=$2 $3=$3 转载于:https://www.cnblogs.com/angyangzhanfang/p/5719773.html...

weixin_30731305的博客 2228

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

php正则表达式小括号的作用,正则表达式中小括号的应用

在正则表达式中小括号的应用种类比较多,差别也很大主要使用的有下面三种:1. (...)Grouping. Group items into a single unit that can be used with *, +,?, |, and so on. Also remember the characters that match this group foruse with later ref...

weixin_35810012的博客 489

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

正则表达式中小括号、中括号、大括号的作用

匹配子项 子项:整体的正则表达式可以看做父亲,第一个小括号就是第一个子项,以此类推…… 正则中小括号()的作用——分组 var str = "abc"; var reg = /(a)(b)(c)/; console.log(str.match(reg)); 结果如下: 注意:match方法中,若传入的正则是全局匹配,返回值不会返回子项的匹配结果。 var str = ...

Web_Web20 5628

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

正则表达式(括号)、[中括号]的区别

今天做js正则,对中括号和小括号的用法还是掌握不到位,感谢博客园的这篇文章。 正则表达式(括号)、[中括号]、{大括号}的区别小结 正则表达式的() [] {}有不同的意思。 () 是为了提取匹配的字符串。表达式中有几个()就有几个相应的匹配字符串。 (\s*)表示连续空格的字符串。 []是定义匹配的字符范围。比如 [a-zA-Z0-9] 表示相应位置的字符要匹配英文字符和数字。[\s*]表示空格...

myppbird的博客 2万+

正则表达式中括号的作用

整个正则表达式旨在匹配一个特定格式的字符串,该字符串以“姓名:”开头,后面跟着学生的姓名(不包含逗号),然后是数学、物理和英语的成绩(每个成绩后面都跟着“分”字),并且这些部分之间用逗号和可能的空白字符分隔。这部分,我们不需要捕获空白字符或“数学”这两个字。我们关注的是数学成绩,而这部分信息是通过后面的数字来体现的。这部分,我们需要捕获数学成绩,即一个或多个数字字符。来检查一个字符串是否匹配这个模式,并提取出捕获组中的信息(即姓名和三个成绩)。:\\s*)数学(\\d+)分。姓名:([^,]+)

m0_69550216的博客 2033

python正则表达式入门教程括号及字符

数据分析遇到字符串处理会有两个阶段涉及到正则表达式,一个是在数据库阶段一个是Python处理阶段。作为一个小白学习正则也遇到很多弯路和难理解的点,今天就梳理梳理学习的过程。 hive里面正则表达式可以用regexp_extract()在select里进行返回指定要求的内容,也可以用regexp在where里进行指定要求的限制条件; python里面re.findall()或者df.str.extr...

黄俊文的博客 6983

正则表达式中(括号) [方括号] {大括号}的区别

之前遇到要用正则判断输入字符串的小需求中遇到了问题,连续的字符串不知道怎么判断。 如邮箱结尾的.com .cn .net等。 于是乎查阅资料: 括号() : 括号是多个匹配,它把括号内的当做一组来处理,限制一些多选的范围,比如上面的需求只能是com cn net结尾的用括号就是最好的选择。 括号能提取字符串,如(com|cn|net)就可以限制,只能是com或cn或net。 括...

yzccc的博客 1万+

js正则表达式,匹配括号中的内容(不包含括号)

js正则表达式,匹配括号中的内容(不包含括号)

态度决定一切 1万+

正则表达式:小括号、中括号、大括号的作用

小括号是分组、中括号是内容、大括号是次数。

浪漫韫秋 4565

正则表达式中的 [] 与 ()

正则表达式中的 [] 与 () 1. 圆括号 () 圆括号在正则表达式中表示组的概念,主要应用于限制多选结构的范围、分组、捕获文本、环视。 1.1 示例:多选结构 (a|b|c):匹配 a 或 b1 或 c 1.2 示例:分组 (abc)?:匹配 abc 一次或者零次 1.3 示例:捕获文本 (aaa)(bbb)(ccc)(?:ddd)(eee):可以用 $1 获取 (aaa) 匹配到的内容,用 $3 则获取到了 (ccc) 匹配到的内容,而 $4 则获取的是由 (eee) 匹配到的内容 1.4 示

sigmarising的博客 1万+

js 正则取出一个括号中的内容

正则取出一个括号中的内容,不含括号 var str = "abcdd(123)asdff"; var _str = str.match(/\((.+)\)/g); //regex2 = /\[(.+?)\]/g; // [] 中括号;regex3 = /\{(.+?)\}/g; // {} 花括号,大括号 console.log(RegExp.$1) // 123 RegExp 是javascript中的一个内置对象,为正则表达式。 RegExp.$1是RegExp的一个属性,指的是与正则表达式匹配的

吃糖牙疼的博客 1万+

java正则表达式 中括号_Java正则提取中括号中的内容操作示例

本文实例讲述了Java正则提取中括号中的内容操作。分享给大家供大家参考,具体如下:曾经在工作中遇到一个问题,就是需要提取字符串中每一个中括号里的内容,在网上搜了一下,发现用正则表达式可以提取中括号中的内容,具体实现如下:import java.util.ArrayList;import java.util.List;import java.util.regex.Matcher;import jav...

weixin_39633807的博客 4219

javascript正则表达式大括号、中括号、小括号的作用以及应用场景

在JavaScript正则表达式中,大括号 {}、中括号 [] 和小括号 () 都有不同的作用和应用场景。大括号 {}在正则表达式中,大括号 {} 表示重复次数。以下是一些常见的应用场景:{n}:精确匹配出现的次数,例如 \d{3} 匹配三个连续的数字。{n,}:至少匹配 n 次,例如 \d{4,} 匹配至少四个连续的数字。{n,m}:匹配 n 到 m 次,例如 \w{2,4} 匹配出现两到四次字母、数字或下划线。中括号 []在正则表达式中,中括号 [] 表示一个集合,包含要匹配的字符。

m0_51312071的博客 6249
上一篇: 正则2: 正则表达式位置详解
下一篇: 正则4:正则表达式回溯原理
gaunjia
博客等级 码龄13年 6粉丝 53原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值