[Day27] String methods 字串操作方法(2)

match()

寻找字串里符合的项目,并用阵列排序出来,可以用 g 区分大小写或者 gi 不区分大小写。
若括号内留空 string.match(); 会回传空阵列[""]
如下例可以用("ain")搜寻字串,但找到第一个 ain 即停止,(/ain/)也是。

let str1 = "The rain in SPAIN stays mainly in the plain";
str1.match("ain"); // ['ain', index: 5, input: 'The rain in SPAIN stays mainly in the plain', groups: undefined]
str1.match(/ain/g); // [ain,ain,ain]
str1.match(/ain/gi); // [ain,AIN,ain,ain]

//
var str2 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
var regexp = /[A-E]/gi;
var matchesArr = str2.match(regexp);

console.log(matchesArr);
// ['A', 'B', 'C', 'D', 'E', 'a', 'b', 'c', 'd', 'e']

repeat()

可重复字串,括号内参数可指定重复次数。

const theLast4Day = "go! ";
theLast4Day.repeat(3); // "go! go! go! "

replace()

替换字元并回传新字串,前面为指定值,後面的值会替换原本字元。

let string = "I am your father."
string.replace("father", "mother"); // 'I am your mother.'

slice()

取出部分字元,有两个参数(index值),第一个为开始第二个为结束,string.slice(start, end)。

let ab = "Espresso Coffee Machine";
ab.slice(9, 15); // "Coffee"
ab.slice(16, 23); // "Machine"

split()

能够简单地将句子分隔成阵列

let string2 = "How do you do?";
string2.split(); // ['How do you do?'],省略的话会直接出现句子
string2.split(""); // ['H', 'o', 'w', ' ', 'd', 'o', ' ', 'y', 'o', 'u', ' ', 'd', 'o', '?'],双引号内无字元
string2.split(" "); // ['How', 'do', 'you', 'do?'],双引号内为空白
string2.split("o"); //  ['H', 'w d', ' y', 'u d', '?'],由此可知双引号内字元为要分隔的依据
string2.split(" ", 3); // ['How', 'do', 'you'] 取到三个

toString()

将其他型别转成字串。

let num = 23456;
num.toString(); 

trim()

删除字串前後的空格。

let str1 = "   good~   "
str1.trim();// "good~"

参考资料

MDN-String
W3C-String


<<:  [D27] 物件侦测(8)

>>:  JS Library 学习笔记:Three.js 初见面,在2D画面创造三维世界 (二)

[DAY-24] 突破生产障碍 高效产出

你是否可以升迁 看的是你替组织带来贡献的可能性 超出期待的方法 就是朝大方向前进(BIG PICT...

练习严谨

我自己秉持着最少力气解决问题,但换句话说就是,有点得过且过,尤其如果快要放假的时候,这时候“选对环境...

Day 7 Dart语言-资料型态

资料型态 内建资料型态是构成整个程序的最小型态单位,是程序中不可或缺的元素,而Dart的内建类型主要...

[线上工具] 分享 / [铁人赛] 完赛心得

最後一篇除了参赛心得之外,也来分享一下切版时常用的线上应用小工具好了~这样才有写了「三十篇」技术文的...

总结

这个系列开始我们先介绍了 RSS feed 里面的内容和不同平台的格式,也了解到要一次处理这麽多又有...