当前位置: 首页 > news >正文

JavaScript正则表达式

search()方法

用来检索与正则表达式相匹配的子字符串,并返回子字符串开始的位置。若结果为-1则表示没有与之匹配的子字符串例:

var str="well pemper"
var str1=str.search(/em/g)
console.log(str1)  //返回6

replace()方法

用于替换一个与正则表达式相匹配的字符串

var str="well pemper"
var str1=str.replace(/pe/i,"am")
console.log(str1)  //返回:well ammper

然而replace()方法的第二个参数建议使用函数,因为replace()方法在执行操作时,每次都会调用函数,函数的值将作为替换文本执行匹配操作,同时函数页可以接收$为前缀的特殊字符组合用来对匹配文本的相关信息进行引用。例:

var str='javascript my/name'
var f=function ($1,$2,$3) {return $2.toUpperCase()+$3
}
var a=str.replace(/\b(\w)(\w*)\b/g,f)
document.write(a)

f函数的第一个参数表示每次匹配的文本;第二个参数表示第一个小括号的子表达式匹配的子字符串;第三个参数表示第二个小括号的子表达式所匹配的子字符串。
即使函数传递任何形参,replace()方法依然会向它传递多个实参,这些实参都包含一定的意思:
第一个参数:与匹配模式相匹配的文本
第二个参数:表示与匹配模式中子表达式相匹配的字符串,个数不限,与子表达式个数有关
第三个参数:表示匹配文本在字符串中的下标位置
第四个参数:表示字符串自身
例:自动匹配字符串中的分数,并算出平均分

			var str='张三96分,李四89分,王二75分,赵四76分'var a=str.match(/\d+/g) var sum=0for (var i = 0; i < a.length; i++) {sum+=parseFloat(a[i])}var avg=sum/a.lengthfunction f () {var n=parseFloat(arguments[1])  //表示与第一个子表达式\d+相匹配的文本return n+"分"+"("+((n>avg)?("超出平均分:"+(n-avg)):("低于平均分:"+(avg-n))+"分")+")"}var sl=str.replace(/(\d+)分/g,f)document.write(sl)

RegExp对象

正则表达式时描述字符模式的对象。它可以用于对字符串进行模式匹配和替换

exec()方法

检索字符串中正则表达式的匹配,如果字符串中有匹配的值,返回匹配的值,没有返回Null。例:

var str="well pemper"
var sp=(/well/g).exec(str)
document.write(sp)  //well

····持续更新中

相关文章:

JavaScript正则表达式

search()方法 用来检索与正则表达式相匹配的子字符串&#xff0c;并返回子字符串开始的位置。若结果为-1则表示没有与之匹配的子字符串例&#xff1a; var str"well pemper" var str1str.search(/em/g) console.log(str1) //返回6replace()方法 用于替换一个与正…...

Redis实战宝典:基础知识、实战技巧、应用场景及最佳实践全攻略

背景 在Java系统实现过程中&#xff0c;我们不可避免地会借助大量开源功能组件。然而&#xff0c;这些组件往往功能丰富且体系庞大&#xff0c;官方文档常常详尽至数百页。而在实际项目中&#xff0c;我们可能仅需使用其中的一小部分功能&#xff0c;这就造成了一个挑战&#…...

[FFmpeg学习]初级的SDL播放mp4测试

在之前的学习中&#xff0c;通过AVFrame来保存为图片来认识了AVFrame&#xff0c; [FFmpeg学习]从视频中获取图片_ffmpeg 获取图片-CSDN博客 在获取到AVFrame时&#xff0c;还可以调用SDL方法来进行展现&#xff0c;实现播放效果。 参考资料 SDL&#xff0c;ffmpeg实现简单…...

情景题之小明的Linux实习之旅:linux实战练习1(下)【基础命令,权限修改,日志查询,进程管理...】

小明的Linux实习之旅&#xff1a;基础指令练习情景练习题下 前景提要小明是怎么做的场景1&#xff1a;初识Linux&#xff0c;创建目录和文件场景2&#xff1a;权限管理&#xff0c;小明的权限困惑场景3&#xff1a;打包与解压&#xff0c;小明的备份操作场景4&#xff1a;使用G…...

k8s 证书更新

如何使用脚本更新Kubernetes集群证书 引言 Kubernetes集群中&#xff0c;由kubeadm初始化的证书有效期默认为一年。当这些证书接近或已经超过有效期时&#xff0c;它们必须被更新以保证集群的正常运作。本文将介绍如何使用特定脚本来更新这些证书&#xff0c;将它们的有效期延…...

Linux操作系统学习:day01

内容来自&#xff1a;Linux介绍 视频推荐&#xff1a;Linux基础入门教程-linux命令-vim-gcc/g -动态库/静态库 -makefile-gdb调试 day01 基础概念 Linux 是 UNIX 操作系统的一个克隆系统, 但是Linux是开源的。 Linux是一个基于文件的操作系统。操作系统需要和硬件进行交互…...

【Oracle生产运维】数据库服务器负载过高异常排查处理

说明 在Oracle数据库运维工作中&#xff0c;经常会遇到Oracle数据库服务器平均负载&#xff08;load average&#xff09;突然异常升高&#xff0c;如果放任不管&#xff0c;严重的情况下会出现数据库宕机、服务器重启等重大故障。因此&#xff0c;当发现数据库服务器平均负载…...

IIR和FIR两种滤波器有什么区别?

概念的区分 IIR&#xff08;Infinite Impulse Response&#xff0c;无限脉冲响应&#xff09;和FIR&#xff08;Finite Impulse Response&#xff0c;有限脉冲响应&#xff09;滤波器是两种常见的数字信号处理滤波器类型&#xff0c;它们在结构、性能和用途上有显著区别&#…...

让GNSSRTK不再难【第二天-第4部分】

第12讲 GNSS授时与PPS 12.1 为什么需要高精度时间 授时的传统理解就是时间传递或者对时。比如以前手机没这么方便时&#xff0c;大家还都使用石英钟手表看时间时&#xff0c;大家都习惯晚上七点准时对着中央一套的报时&#xff0c;来校准你家的机械钟或者挂钟&#xff0c;这就…...

「OC」UI练习(一)—— 登陆界面

「OC」登陆界面 明确要求 一个登陆界面的组成&#xff0c;用户名提示以及输入框&#xff0c;密码提示提示以及输入框&#xff0c;登陆按钮&#xff0c;以及注册按钮&#xff0c;根据以上要求我们将我们的组件设置为成员变量。 //viewControl.h #import <UIKit/UIKit.h>…...

基于机器学习和深度学习的NASA涡扇发动机剩余使用寿命预测(C-MAPSS数据集,Python代码,ipynb 文件)

以美国航空航天局提供的航空涡扇发动机退化数据集为研究对象&#xff0c;该数据集包含多台发动机从启动到失效期间多个运行周期的多源传感器时序状态监测数据&#xff0c;它们共同表征了发动机的性能退化情况。为减小计算成本&#xff0c;需要对原始多源传感器监测数据进行数据…...

计算机组成原理-常见计算题含IEE754

一、补码加减运算 二、溢出判断 采用一位符号位 采用双符号位 三、定点数的移位运算 算术右移 算数左移 反码的算术移位 补码的算术移位 四、浮点数的表示 一个右规的例子 五、IEEE754 移码...

InnoDB存储引擎非常重要的一个机制--MVCC(多版本并发控制)

Mysql是如何实现隔离性的&#xff1f;&#xff08;锁MVCC&#xff09; 隔离性是指一个事务内部的操作以及操作的数据对正在进行的其他事务是隔离的&#xff0c;并发执行的各个事务之间不能相互干扰。隔离性可以防止多个事务并发执行时&#xff0c;可能存在交叉执行导致数据的不…...

【DevOps】服务器硬件基础知识

目录 前言 1、处理器&#xff08;CPU&#xff09;&#xff1a;服务器的“大脑” 2、内存&#xff08;RAM&#xff09;&#xff1a;服务器的“工作台” 3、存储&#xff08;Storage&#xff09;&#xff1a;服务器的“仓库” 4、 网络接口&#xff08;NIC&#xff09;&…...

6.10 c语言

7.1 if-else语句 简化形式 if(表达式)语句块 阶梯形式 if(表达式1)语句块1 else if(表达式2&#xff09;语句块2 嵌套形式 if() if() 语句1 else 语句2 else if() 语句3 else 语句4 表达式一般情况下为逻辑表达式或关系表达式 #include <stdio.h>//从小到大排序,输出顺…...

jenkins插件之Jdepend

JDepend插件是一个为构建生成JDepend报告的插件。 安装插件 JDepend Dashboard -->> 系统管理 -->> 插件管理 -->> Available plugins 搜索 Jdepend, 点击安装构建步骤新增执行shell #执行pdepend if docker exec phpfpm82 /tmp/composer/vendor/bin/pdepe…...

vue3之基于el-image实现图片预览

实现的功能&#xff1a; 图片可放大预览&#xff0c;支持放大、缩小、向左向右旋转查看可点击任意一张图后进行左右切换查看大图 主要使用的方法&#xff1a;splice和concat 主要代码 // template中 <div><el-imagev-for"(item, index) in imgsData":src&q…...

wooyun_2015_110216-Elasticsearch-vulfocus

1.原理 ElasticSearch具有备份数据的功能&#xff0c;用户可以传入一个路径&#xff0c;让其将数据备份到该路径下&#xff0c;且文件名和后缀都可控。 所以&#xff0c;如果同文件系统下还跑着其他服务&#xff0c;如Tomcat、PHP等&#xff0c;我们可以利用ElasticSearch的备…...

Fedora的远程桌面

要在 Fedora 40 上开启远程桌面功能。 首先&#xff0c;要确保已安装 gnome-remote-desktop 和 vino 包。 这些软件包通常默认安装在 Fedora 的 GNOME 桌面环境中。 可以按照以下步骤操作&#xff1a; 1、判断电脑是否安装了 gnome-remote-desktop 和 vino 包: tomfedora:…...

CSS id选择器

目录 任务描述 相关知识 id选择器 id选择器语法 类选择器与id选择器的区别 编程要求 任务描述 在本关中&#xff0c;你将通过id选择器的方式完成页面菜单栏样式布局&#xff0c;栏目导航等任务。 完成任务之后&#xff0c;基本页面效果如下&#xff1a; 动态效果如下&am…...

百川2-13B-4bits量化版精度测试:OpenClaw自动化任务准确率对比

百川2-13B-4bits量化版精度测试&#xff1a;OpenClaw自动化任务准确率对比 1. 测试背景与实验设计 上周在部署OpenClaw自动化工作流时&#xff0c;我遇到了一个现实问题&#xff1a;本地显卡只有12GB显存&#xff0c;跑不动原版13B模型。于是尝试了百川2-13B的4bits量化版本&…...

罚到肉疼!2026“两个细则”大考:你的风电场还在用“注定不准”的方法做预测吗?

当95%置信概率成为国家标准&#xff0c;单点预测的时代彻底终结2026年的春天&#xff0c;对于新能源发电企业而言&#xff0c;比以往任何时候都要“寒冷”。山东、四川等地新版“两个细则”正式施行&#xff0c;国家发改委“136号文”深入落地&#xff0c;新能源全面进入电力市…...

ES920 Arduino库深度解析:Sub-1GHz工业无线通信实战指南

1. ES920无线模块Arduino库深度解析&#xff1a;面向工业级Sub-1GHz通信的工程实践指南ES920系列是日本Echostar公司推出的高性能Sub-1GHz无线通信模块&#xff0c;涵盖FSK调制的ES920与LoRa调制的ES920LR两个子型号。该系列模块专为日本920MHz ISM频段&#xff08;920.6–928.…...

嵌入式软件架构设计:硬件抽象层实践

嵌入式软件架构设计&#xff1a;建立硬件抽象层的工程实践 1. 嵌入式软件架构概述 1.1 架构设计的必要性 在嵌入式系统开发中&#xff0c;软件架构设计直接影响产品的可维护性、可扩展性和可移植性。良好的架构设计能够&#xff1a; 减少不必要的返工 建立宏观层面的开发规…...

Anthropic 经济指数报告:学习曲线

引言 Anthropic 经济指数利用隐私保护数据分析系统,追踪 Claude 在整个经济领域中的应用情况。这是Anthropic 努力的一部分,旨在尽早理解 AI 对经济的影响,以便研究人员和政策制定者有充足的时间做好准备。 在最新一期的报告中,首先观察到了与先前报告相比使用情况的变化…...

PLCopen运动控制功能块实战:从单轴控制到多轴联动的5个经典案例解析

PLCopen运动控制功能块实战&#xff1a;从单轴控制到多轴联动的5个经典案例解析 在工业自动化领域&#xff0c;精确的运动控制是实现高效生产的关键。无论是简单的传送带定位&#xff0c;还是复杂的多轴协同作业&#xff0c;PLCopen规范提供的标准化功能块都能为工程师提供强大…...

Vue3项目救星:我是如何用Cursor的‘项目规则’功能,让团队新人一天上手的

Vue3团队协作革命&#xff1a;用Cursor项目规则实现代码规范的自动化治理 当新成员加入你的Vue3项目时&#xff0c;是否经历过这样的场景&#xff1f;新人提交的代码里混杂着选项式API和组合式API&#xff0c;路由命名忽而短横线忽而大驼峰&#xff0c;样式文件里散落着各种魔…...

Original PIPE vs. Serdes PIPE: Understanding the Key Differences in PHY Interface Design

1. 从零理解PIPE接口&#xff1a;物理层设计的通用语言 第一次接触PIPE接口时&#xff0c;我完全被各种缩写搞晕了。直到在某个PCIe项目中被时序问题折磨了整整两周后&#xff0c;才真正明白这个接口的重要性。简单来说&#xff0c;PIPE&#xff08;PHY Interface for PCI Expr…...

Pixel Fashion Atelier惊艳案例:‘赛博神社’主题皮装在明亮城镇UI下的生成

Pixel Fashion Atelier惊艳案例&#xff1a;‘赛博神社’主题皮装在明亮城镇UI下的生成 1. 项目概览 Pixel Fashion Atelier&#xff08;像素时装锻造坊&#xff09;是一款基于Stable Diffusion与Anything-v5的图像生成工作站。与传统AI工具不同&#xff0c;它采用了复古日系…...

Matlab实战:5步搞定微电网源储荷协调调度(附完整CPLEX调用代码)

Matlab实战&#xff1a;微电网源储荷协调调度的5个工程化技巧 微电网调度是新能源时代的核心技术难题之一。面对风光发电的波动性和负荷需求的多变性&#xff0c;如何实现源、储、荷三者的动态平衡&#xff0c;成为电力工程师们每天都要应对的挑战。不同于学术论文中复杂的理论…...