Regex 测试至少一个小写和大写字符

Regex 测试至少一个小写和大写字符,regex,awk,Regex,Awk,如何使用awk检查字符串是否包含至少一个小写和至少一个大写 我的尝试: ^.*[a-z]+[A-Z]+.*$|^.*[A-Z]+[a-z]+.*$ 试试这个 =多次 *=任何字符 ?==上次检查应为真 [a-z]/[a-z]=应包含a-z和a-z的范围 您可以随时在此处测试您的正则表达式: 使用awk可以使用逻辑运算符&&并使用各自的字符类测试小写和大写: $ cat file abc ABC aBc 123 $ awk '/[a-z]/&&/[A-Z]/{print $0,

如何使用
awk
检查字符串是否包含至少一个小写和至少一个大写

我的尝试:

^.*[a-z]+[A-Z]+.*$|^.*[A-Z]+[a-z]+.*$
试试这个

=多次

*=任何字符

?==上次检查应为真

[a-z]/[a-z]=应包含a-z和a-z的范围

您可以随时在此处测试您的正则表达式:

使用
awk
可以使用逻辑运算符
&&
并使用各自的字符类测试小写和大写:

$ cat file
abc
ABC
aBc
123

$ awk '/[a-z]/&&/[A-Z]/{print $0,"[PASS]";next}{print $0,"[FAIL]"}' file
abc [FAIL]
ABC [FAIL]
aBc [PASS]
123 [FAIL]

请展示您的尝试。尝试此链接:我为这个问题编写了一个非常深入的“密码匹配”正则表达式下拉列表:可能会有所帮助。我的尝试:^.*[a-z]+[a-z]+.*$|^.*[a-z]+[a-z]+.*$这里问同样问题的其他20个问题没有一个不适合您的原因吗,喜欢还是?这个正则表达式不需要开头或结尾
*
。如果您使用的是任何锚定方法(比如Javascript的.match),那么您最多需要一种锚定方法。(我会选择最后一个)。awk支持正则表达式。但是请注意,每个工具和操作系统的regex实现可能不同。您可以告诉awk您更喜欢哪个正则表达式。我主要使用perl风格的正则表达式。没有
awk
的实现支持环顾四周。
$ cat file
abc
ABC
aBc
123

$ awk '/[a-z]/&&/[A-Z]/{print $0,"[PASS]";next}{print $0,"[FAIL]"}' file
abc [FAIL]
ABC [FAIL]
aBc [PASS]
123 [FAIL]