JavaScript学习笔记(字符串操作)

本文深入探讨JavaScript中字符串操作方法,如split(), replace(), search() 和 match()等,并介绍了正则表达式的基本使用方法。

本篇将要讲述的是在JavaScript中字符串的操作,上一篇也讲述了一些字符串的简单属性和方法,本篇将更加全面的讲述并且简单的介绍一下正则表达式在javascript中的使用。

先来说说String对象的一些其它方法: 

split():

该方法用于将字符串按照传入的分割参数分割成一个字符串数数组,举例说明:



如果分割分出现在字符串的末尾,那么还会分割出一个空字符串,这点值得注意,有时候会被忘记。

replace():

该方法将按照传入参数搜索字符串,将所有匹配的子串替换为想要的字符串,举例说明:




从上例可以看出,成功替换了单词boy,注意这里替换时并没有对原有的str进行修改,只是返回了其修改过后的副本。

search():

该方法将对字符串按照传入的参数进行搜索,如果找到则返回该字符串第一次出现的位置,否则返回-1,举例说明:


match():

该方法按照传入的参数对字符串就行搜索,创建一个数据,将每一个符合要求的数据放入数组中,最终返回该数组,该方法常语正则表达式结合使用,举例说明:

上面讲述了正则表达式,正则表达式通常用于检索,替换那些符合某个规则的文本。javascript中的正则表达式极大地借鉴了Perl中的正则表达式语法。

在javascript中,正则表达式是通过RegExp对象使用的,RegExp对象是javascript中的一个内置对象。

该对象有两种创建格式:

1.var myRegExp = /\d\d\d/;

2.var myRegExp1 = new RegExp("\\d\\d\\d");

RegExp有三个可以定义的属性:

1.G:全局匹配,查找所有与模式匹配的子串,而不是在找到第一个子串后就停止查找。

2.I:模式不区分大小写。

3.M:多行标志。

使用方式如下:

var myRegExp = /\d\d\d/gim;

RegExp对象有一个test方法经常会被我们用到,该方法可以传入一个待检查的字符串,执行后,如果该字符串匹配规则则返回true,否则返回false。

本篇不花费太多的篇幅讲述正则表达式的使用方法,如果读者对此不熟悉的话可以点击后面的javascript正则表达式使用手册去学习。

下面用一个完整的例子来展示一下:

test.js:

function isValidTelephoneNumber(telephoneNumber){
	var telRegExp = /^(\+\d{1,3} ?)?(\(\d{1,5}\)|\d{1,5})?\d{3}?\d{0,7}((x|xtn|ext|extn|pax|pbx|extension)?\.? ?\d{2-5})?$/i;
	return telRegExp.test(telephoneNumber);
}
test1.html:
<!DOCTYPE html>
<html lang="en">
<head>
	<title>just a test</title>
</head>
<body>
	<script src="test.js"></script>
	<script>
		var phoneNumber = prompt("Please enter a phone number:");
		if(isValidTelephoneNumber(phoneNumber)){
			alert("you enter a correct number");
		}else{
			alert("what you enter is not a phone number");
		}
	</script>
</body>
</html>
执行效果如下:



综上就是本篇的内容了,下一篇将详细介绍javascript中的日期,时间以及计时器。


【轴承故障诊断】基于融合鱼鹰和柯西变异的麻雀优化算法OCSSA-VMD-CNN-BILSTM轴承诊断研究【西储大学数据】(Matlab代码实现)内容概要:本文提出了一种基于融合鱼鹰和柯西变异的麻雀优化算法(OCSSA)优化变分模态分解(VMD)参数,并结合卷积神经网络(CNN)与双向长短期记忆网络(BiLSTM)的轴承故障诊断模型。该方法利用西储大学公开的轴承数据集进行验证,通过OCSSA算法优化VMD的分解层数K和惩罚因子α,有效提升信号分解精度,抑制模态混叠;随后利用CNN提取故障特征的空间信息,BiLSTM捕捉时间序列的动态特征,最终实现高精度的轴承故障分类。整个诊断流程充分结合了信号预处理、智能优化与深度学习的优势,显著提升了复杂工况下轴承故障诊断的准确性与鲁棒性。; 适合人群:具备一定信号处理、机器学习及MATLAB编程基础的研究生、科研人员及从事工业设备故障诊断的工程技术人员。; 使用场景及目标:①应用于旋转机械设备的智能运维与故障预警系统;②为轴承等关键部件的早期故障识别提供高精度诊断方案;③推动智能优化算法与深度学习在工业信号处理领域的融合研究。; 阅读建议:建议读者结合MATLAB代码实现,深入理解OCSSA优化机制、VMD参数选择策略以及CNN-BiLSTM网络结构的设计逻辑,通过复现实验掌握完整诊断流程,并可进一步尝试迁移至其他设备的故障诊断任务中进行验证与优化。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

moonfish0607

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值