javascript - 正则表达式查找至少包含一个大写字母的子字符串

标签 javascript regex

我必须找到一个字符串的所有子串,至少有一个大写字母,不允许数字,只有[a-zA-Z],不存在空格。

然后,如果我有一个类似 "s=aAb0sDa" 的字符串,则 s.match(regex) 匹配必须返回:["A",“aA”,“Ab”,“aAb”,“sD”,“Da”,“sDa”,“D”]

我唯一尝试的是 s.match(/[a-z]*[A-Z]+[a-z]*/g),但它只返回 ["aAb", "sDa"]

有什么想法吗?

最佳答案

您可以使用一些正则表达式进行强力检查。

function getParts(string) {
    var result = [];
    string.split(/[^a-z]/i).forEach(function (a) {
        var i, j, match;
        for (i = 0; i < a.length; i++) {
            for (j = i + 1; j < a.length + 1; j++) {
                match = a.slice(i, j).match(/[a-z]*[A-Z]+[a-z]*/);
                match && result.push(match[0]);
            }
        }
    });
    return result;
}

console.log(getParts('aAb0sDa1aaBCaa'));
.as-console-wrapper { max-height: 100% !important; top: 0; }

关于javascript - 正则表达式查找至少包含一个大写字母的子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39834245/

相关文章:

javascript - 除非刷新,否则谷歌地图无法正确显示

javascript - 如何在 shapeshift jquery 中获取放置项目的 id

javascript - 得到一个类似的字符串,释放其余的

javascript - 用于验证具有多个字母数字模式的字符串的正则表达式

php - preg_match_all 空匹配

javascript - 我可以将 JavaScript 数据从 PHP 发送到 Html 吗?

javascript - 设置 img src 属性时宽度和高度不变

javascript - Firebase:按最近的位置查询

ios - 我的正则表达式在 obj-c 中每次都返回 nil,包括示例代码

regex - 使用 htaccess 删除 URL 的一部分并添加目录