如长标题所示,如果测试字符串仅包含字符,则只能为字母。但是,如果测试字符串有多个字符(最多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/

10-16 14:30
查看更多