📅  最后修改于: 2023-12-03 15:14:53.945000             🧑  作者: Mango
在编写 JavaScript 时,有时需要从一个字符串中获取引号或双引号之间的文本内容。在 ES6 中,我们可以使用正则表达式和字符串模板的语法来实现这一目的。
可以定义一个正则表达式来匹配引号或双引号之间的文本。我们可以使用 String.prototype.match()
方法来获取匹配结果。
const str = 'This is a "sample" string';
const regex = /"(.*?)"/g;
const matches = str.match(regex);
console.log(matches[0]); // Output: "sample"
这里的正则表达式 /"(.*?)"/g
匹配双引号之间的任意文本。我们在正则表达式中使用 .*?
来匹配任意字符,而且是非贪婪匹配,因此只匹配到下一个双引号之前的所有字符。
另一种方法是使用字符串模板的语法。我们可以使用模板字面量(使用反引号 `)来定义包含引号或双引号的字符串,并使用模板字符串的语法来获取引号或双引号之间的内容。
const str = `This is a "sample" string`;
const strArr = str.split(/"|'/);
console.log(strArr[1]); // Output: sample
这里我们使用了 String.prototype.split()
方法,并传入一个正则表达式作为分隔符来分割字符串。这将把所有引号和双引号除去,生成一个数组。我们可以使用数组索引来获取引号或双引号之间的内容。
我们可以使用正则表达式或字符串模板来获取引号或双引号之间的文本内容。无论哪种方法,都可以轻松地在 JavaScript 中处理字符串。