如长标题所示,如果测试字符串仅包含字符,则只能为字母。但是,如果测试字符串有多个字符(最多128个字符),则它仍必须以字母字符开头,但允许使用数字和下划线。
这是我到目前为止的正则表达式。 ^([a-zA-Z])|([a-zA-Z][A-Za-z0-9\_]{2,128})$
如果第二个字符是下划线,则失败。
这是链接:https://regex101.com/r/xzmfRs/1
最佳答案
您可以使用此正则表达式解决问题:
^[a-zA-Z]\w{0,127}$
要允许一个字母,或者最多允许128个字符的单词字符。
\w
是[a-zA-Z0-9_]
的简写Updated RegEx Demo
关于java - 如果多个字符可以包含数字并且下划线最多为128,则正则表达式的第一个字符必须为字母,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39793785/