正则获取指定字符到下一个大写字符之间的内容
const str = "This is a Test String.";
const regex = /i([^A-Z]*)/;
const result = regex.exec(str);
console.log(result[1]);
// 输出 `s is a `
不确定是不是你想要的结果,其中的 i 可以换成你想要的指定字符。
const regex = /指定字符([a-z]+)(?=[A-Z])/g;
const str = '指定字符abcDEF指定字符ghIJK指定字符lmNOP';
while ((match = regex.exec(str)) !== null) {
console.log(match[1]);
}
可以使用正则表达式来获取指定字符到下一个大写字符之间的内容。具体正则表达式如下:
/(?<=指定字符)[a-z]*(?=[A-Z])/g
以上正则表达式中,(?<=指定字符)表示匹配前面是指定字符;[a-z]*表示匹配任意小写字母(0个或多个);(?=[A-Z])表示匹配后面是大写字母。
使用该正则表达式可以将字符串中所有符合条件的子串提取出来。以下是一个示例代码:
const str = 'abcd_efgh_IJKL_mnop_QRST';
const regex = /(?<=_)[a-z]*(?=[A-Z])/g;
let match = null;
const result = [];
while ((match = regex.exec(str)) !== null) {
result.push(match[0]);
}
console.log(result); // ['efgh', 'mnop']
以上代码中,首先定义了一个字符串str,然后使用上面的正则表达式进行匹配。通过while循环迭代匹配结果,将每个匹配项存储在数组result中。最后输出result数组即可得到所有符合条件的子串。
8 回答4.7k 阅读✓ 已解决
6 回答3.5k 阅读✓ 已解决
5 回答2.8k 阅读✓ 已解决
6 回答2.4k 阅读
5 回答6.4k 阅读✓ 已解决
4 回答2.3k 阅读✓ 已解决
4 回答2.8k 阅读✓ 已解决