您现在的位置是:亿华云 > 域名
从编辑器视角审视String的4类26种方法
亿华云2025-10-08 20:53:29【域名】2人已围观
简介为什么string 字符串在各种语言中会有如此之多的 methods 呢?只须简单想一下,我们日用的编辑的全部功能其实只不过就是在处理和操作字符串。一、编辑器文本操作开始盘点 string 的所有 m
为什么string 字符串在各种语言中会有如此之多的从编 methods 呢?只须简单想一下,我们日用的辑器编辑的全部功能其实只不过就是在处理和操作字符串。
一、视角审视编辑器文本操作
开始盘点 string 的种方所有 methods 之前,我们首先梳理在编辑器中,从编处理文本文字,辑器都有哪些操作。视角审视
第一类,种方选择复制与黏贴;
第二类,从编具体的辑器编辑操作,写入文本,视角审视查询修改,种方以及删除;
第三类,从编撤销与重复操作;
第四类,辑器补全操作,视角审视语法检查以及断行等。
下面,我们将按照以上编辑器文本处理的类型,对所有string的方法作分类。
二、String 字符串操作的分类
事实上,我们每日所处理的文本内容,文件的内容就是云服务器 string。
第一类、选择与复制(2种方法)
首先编辑器处理文本内容的第一类,黏贴与复制,就是光标选中文本的特定区域,执行复制与黏贴操作。对应到 string 操作中,就是 substring, slice.
> let s = "string categories" > s.substring(7, 16) categorie > s.substring(16, 7) categorie // slice 与 substring 的区别只在于,substring 会自动调整大小数的顺序 > s.slice(7, 16) categorie > s.slice(16, 7) // 特殊的 split 方法 > s.split(" ") [ string, categories ] >第二类,具体的编辑操作
在数据库操作中,我们往往喜欢说“增删改查“这样的四种操作和操作顺序。乍一读似乎朗朗上口,然而细品起来,"增删改查"的顺序比较荒谬。怎么刚刚“增”了就马上又要“删”呢?删除的依据是什么?不要首先查询吗?查询后不要尝试修改吗?直至修改不好,最后一步才是“删除”。
因此,将“增删改查”的顺序,变更为“增查改删”。亿华云计算
所谓的“增“就是”字符串“的创建,有三种方式:
s = string categories // single quote s = "string categories" // double quote s = `string categories` // caret `其次是"查", 无论在编辑器中,还是字符串的处理过程中,查询都是关键的部分。编辑器查询往往多为regex的应用,这对于 string 操作而言过于重型,常用的多为逻辑查询5种。
> s.charAt(0) s > s.charAt(s.length-1) s > s.startsWith(str) true > s.endsWith(es) true > s.includes(c) true > s.indexOf(c) 7 > s.lastIndexOf(c) 7s高阶的regex正则查询:
> s.search(/[\s]/g); 6 > s.search(/[\w]/g); 0 > s.match(/[\s]/i) [ , index: 6, input: string categories, groups: undefined ] > s.match(/[\w]/i) [ s, index: 0, input: string categories, groups: undefined ] > s.match(/[\w]/g) [ s, t, r, i, n, g, c, a, t, e, g, o, r, i, e, s ] > arr = [...s.matchAll(/[\w]/g)] [ [ s, index: 0, input: string categories, groups: undefined ], ... [ i, index: 14, input: string categories, groups: undefined ], [ e, index: 15, input: string categories, groups: undefined ], [ s, index: 16, input: string categories, groups: undefined ] ]紧随“查询”的是“变更”与“修改”, 继续regex的逻辑,我们查看 replace.
> s.replace(string, arry) arry categories > s.replace(/[a-z]+/, "array") array categories > s.replaceAll()其他常用的 case, transpose, join, 以及 whitespace 的操作:
// CaseManipulation > s.toLowerCase() string categories > s.toUpperCase() STRING CATEGORIES s.toLocaleLowerCase s.toLocaleUpperCase // 对 whitespace 的处理 s.trim s.trimStart s.trimEnd // 增加空格等 s.padStart s.padEnd //以及多行的合并 > s.concat( new) string categories new第三类 撤销与重复操作:
没有撤销操作而只有重复.
> s.repeat(3) string categoriesstring categoriesstring categories第四类 补全,语法检查和断行
此处我们姑且将 pad 作为补全, 而将 split 想象为断行.
三 对底层编码的处理
String 字符串就是文字与编码, 因此最底层的对应编码的操作也归类此处处理.
> s.charCodeAt(0) 115 > s.codePointAt(0) 115 > s.normalize() string categories四 总结
诸上为从编辑器的惯常操作,而对string所有的网站模板methods作归类的盘点。
// 1.选择与复制 3 substring, slice, split // 2.具体的编辑操作, 按照“增查改删”的原则 // 2.1 增加 1 constructor // 2.2 查询 8 charAt, startsWith, endsWith, includes, indexof, lastIndexOf, search, searchAll // 2.3 改 10 replace, replaceAll, toLowerCase, toUpperCase, //Case trim, trimStart, trimEnd, // whitespae padStart, padEnd // completion concat //合并 join // 3. 重复与撤销等 1 repeat // 4.处理底层编码 3 charCodeAt,codePointAt,normalize
很赞哦!(321)
相关文章
- 3、不明先知,根据相关征兆预测可能发生的事件,以便提前做好准备,赶紧注册相关域名。;不差钱域名;buchaqian抢先注册,就是这种敏感类型。预言是最敏感的状态。其次,你应该有眼力。所谓眼力,就是善于从社会上时不时出现的各种热点事件中获取与事件相关的域名资源。眼力的前提是对域名领域的熟悉和丰富的知识。
- JavaScript引入模块的历史简介
- JDK 16:Java 16需要了解的新功能
- 深鸿会深大小组:鸿蒙Hi3861最详细环境搭建
- 5. 四种状态过后,域名管理机构释放域名给公众注册。
- MyBatis插件原理分析,看完感觉自己better了
- 为何还在浪费时间?Python与R语言的数据科学之争
- 一文详解 Nacos 高可用特性
- 小白注册网站域名该怎么办?有什么步骤?
- 我从 17w star 的 Vuejs 中学到了什么?
热门文章
站长推荐
用户邮箱的静态密码可能已被钓鱼和同一密码泄露。在没有收到安全警报的情况下,用户在适当的时间内不能更改密码。在此期间,攻击者可以随意输入帐户。启用辅助身份验证后,如果攻击者无法获取移动电话动态密码,他将无法进行身份验证。这样,除非用户的电子邮件密码和手机同时被盗,否则攻击者很难破解用户的邮箱。
2021年提升编程技能的4大方式
2D动画唇动合成,根据语音自动生成动画人物口型
JUnit:别再用 main 方法测试了,好吗?
2、根据用户基础选择访问提供程序。由于互联问题的存在,接入商的选择也非常重要,如果用户群主要在联通,尽量选择联通接入较好的接入商,如果用户群主要在电信,那么选择电信接入较好的接入商。如果用户组位于国家/地区,则选择更好的访问提供程序进行交互。
一文搞懂 CountDownLatch 用法和源码!
中国首次实现量子优越性后,Science审稿人坐不住了
一篇文章带你了解SVG Javascript脚本