字符串匹配之includes方法介绍
字符串匹配之includes方法
字符串匹配也是我们在编程中经常遇到的一个事了,不过好在JS强大,为我们提供了includes
方法,接下来我就说一下这个方法的要点。
以一个列子为基础吧,讲起来明白些:
需求:有一串字符串,我想要知道这串字符串中有没有我需要的字符。
循序渐进
首先,你可以通过把原有的字符串通过剪切的方法,把一个个字符剪切出来,然后放到一个数组里,然后遍历数组与你所需要的字符串进行对比。
方法完全OK,但是耗时耗力。
使用我们的includes方法,可以快速帮你进行匹配。
匹配字符串中的字符
我们来看一段代码:
<script>// 要匹配的字符串var str = "雨";var weather = "阵雨雷阵雨暴雨小雨";// 进行匹配var result = weather.includes(str);console.log(result);
</script>
输出的结果是: true
输出true,就代表着,我们在 weather 字符串里匹配到了雨
字。
匹配数组中的内容
- 如果把上面的需求进行升级,我们不在局限于匹配一个字符串中的字了,我们要匹配的字符串是一个特定的天气名词,比如
小雨,中雨
等。 - 上面的代码显然就不是适应了,因为上面的字符串匹配逻辑,即便你要匹配
雷阵
也会返回true,但是显然这不是一个气象名字,不符合要求。
所以我们需要用到数组的匹配,我们在来看一段代码:
<script>// 要匹配的字符串var str = "中雪";var weather2 = ['小雪','中雪','大雪','暴雪'];// 进行匹配var result = weather2.includes(str);console.log(result);
</script>
输出的结果是: true
输出true,就代表着,我们在 weather2 字符串里匹配到了中雪
一词。
其实如果有心的读者,会发现一点有趣的事情:includes
方法有点类似于switch
方法,既有相同之处,又互有优劣,使用时可根据情况进行选择。
includes方法使用场景常见于包含不包含,多对一等场景。
例如:
- 在做天气的逻辑时,不管是中雨,小雨,大雨,统一都用雨的图标来代替,就可以使用includes方法匹配雨这个字。
- 一个字符串中,如果出现了这个字符串,我们就做什么操作,没有出现做什么操作等。
字符串匹配之includes方法介绍相关推荐
- PS首行缩进2个字符的正确设置方法介绍
内容提要:本文介绍PS首行缩进2个字符的方法介绍. photoshop首行缩进是一个比较实用且好用的命令哦.对PS感兴趣的朋友可加PS学习交流群:142574315 ps教程中首行缩进调整在段落面板里 ...
- JavaScript正则——字符串匹配正则的方法
一.字符串匹配正则方法 语法:字符串.方法名称 1>search (类似于indexOf) 如果匹配,返回下标位置 如果不匹配,返回-1 查找a的下标位置 注: ①下标从0开始数: ②空格也需要 ...
- c语言给定一个字符串匹配,使用C语言解决字符串匹配问题的方法
最常想到的方法是使用KMP字符串匹配算法: #include #include #include int get_nextval(char *pattern,int next[]) { //get t ...
- java中字符串的精确匹配_Java最佳实践–字符串性能和精确字符串匹配
java中字符串的精确匹配 在使用Java编程语言时,我们将继续讨论与建议的实践有关的系列文章,我们将讨论String性能调优. 我们将专注于如何有效地处理字符串创建, 字符串更改和字符串匹配操作. ...
- Java最佳实践–字符串性能和精确字符串匹配
在使用Java编程语言时,我们将继续讨论与建议的实践有关的系列文章,我们将讨论String性能调优. 我们将专注于如何有效地处理字符串创建, 字符串更改和字符串匹配操作. 此外,我们将提供我们自己的用 ...
- 从 重复叠加字符串匹配 看Java String源码中的contains方法
原题:重复叠加字符串匹配 解题思路已经写在代码中了: class Solution {public:bool contain(string &a, string &b, long lo ...
- 编写一个方法参数接收一个字符串,返回一个Date对象(在多种日期格式中找到与字符串匹配的那一个)用到解析异常ParseException
题目:编写一个方法参数接收一个字符串,返回一个Date对象(在多种日期格式中找到与字符串匹配的那一个)用到解析异常ParseException 具体代码如下: import java.text.Par ...
- Computer:正则表达式技术的简介(元字符/普通字符使用字典及其方法总结大全)、相关库介绍、案例应用之详细攻略
Computer:正则表达式技术的简介(元字符/普通字符使用字典及其方法总结大全).相关库介绍.案例应用之详细攻略 导读:正则表达式有等价的概念,比较晦涩难懂,其实,使用正则表达式本身就是个难题.当面 ...
- 字符串匹配shiftand算法
令人惊叹的Shift-And/Shift-Or 写在前面:Shift-And/Shift-Or是如此令人惊叹的算法,在KMP基础上开始一段神奇之旅. 目的:以Shift-And算法为载体,试图在减少思 ...
最新文章
- 前阿里程序员吐槽女友败家:开酒店必须400元起步,工资只有自己的1/3
- 《LeetCode力扣练习》第13题 C语言版 (做出来就行,别问我效率。。。。)
- BadgeView(View上添加提醒)的应用与分析
- SIP中的SDP offer/answer交换初探
- 期望文件系统格式在“1”到“4”之间;发现格式“6”
- python如何将视频流实时传输到手机?(有问题,一次只能被一台访问)
- 没牙虎小apple的幸福生活
- 子线程和主线程的关系
- python挂机脚本阴阳师_Python简单实现阴阳师挂机脚本
- uniapp开发实例github_跨端开发痛点?送你一款Vue最流行的跨端框架——uni-app
- python怎样把if语句写成一行_python:将一个简单的if-then-else语句放在一行上
- ASP.NET缓存中Cache过期的三种策略
- python: ubuntu下把py2.7改成py3
- 构建LALR(1)项目集族
- unity3d Crease效果分析
- 12v电瓶20安时是什么意思
- confluence开发,实现与现有单点登录sso系统对接。
- 散列表--双散列、再散列与可扩散列
- 程序员把开发搬到云服务器,如何将IDEA开发的java web项目移植到腾讯云服务器
- linux中tftp服务器设置及测试
热门文章
- vue3报错error Component name “Layout“ should always be multi-word vue/multi-word-component-names
- win7怎么关闭3D加速的方法
- spring aop执行逻辑 奥利给
- 解决code ELIFECYCLE npm ERR errno 1问题
- 这届世界杯是不是让你出乎意料?写个足球小游戏来模拟一下!
- 使用动态链接库的好处
- 自动驾驶计算系统的多种计算架构---分布式计算架构、中心式计算架构和混合式计算架构
- myBatis MybatisMapperMethod类 获取 Page对象的坑。。
- Android 10.0横屏旋转开机动画显示不全的解决方案
- 原生js手机相册制作 原创