有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!


共 (4) 个答案

  1. # 1 楼答案

    这应该满足你的要求

    [a-z]+
    
  2. # 2 楼答案

    try this
    
    import re
    list1 = ['test','tesT','test123','test@#$','ABC','teST123']
    for word in list1:
        matchtext = re.match("(^[^A-Z]+$)",word)
        print(matchtext)
    
    output:
    <_sre.SRE_Match object; span=(0, 4), match='test'>
    None
    <_sre.SRE_Match object; span=(0, 7), match='test123'>
    <_sre.SRE_Match object; span=(0, 7), match='test@#$'>
    None
    None   
    
  3. # 3 楼答案

    我想你要找的是:

    ^[^A-Z]*[a-z]+[^A-Z]*$
    

    与此匹配的字符串必须至少包含一个小写字母,并且不能包含大写字母

    ^和$强制正则表达式匹配整个字符串(而不仅仅是一部分)。[^A-Z]*表示空字符串或不包含大写字母的字符串。这是在[a-z]+的两侧组合而成的,它是一个包含一个或多个小写字母的字符串

  4. # 4 楼答案

    试试这个正则表达式:

    ^(?=[^A-Z]+$)(?=[^a-z]*[a-z]).*$

    Click for Demo

    解释:

    • ^-断言字符串的开头
    • (?=[^A-Z]+$)-Positive lookahead验证测试字符串中没有大写字母,直到字符串结束
    • (?=[^a-z]*[a-z])正向前瞻以验证至少有一个小写字母a-z
    • .*-匹配除换行符以外的任何字符的0+次出现次数。这与上述两个条件一起工作
    • $-断言字符串的结尾