我已经编程一段时间了,但直到最近才有正则表达式的需求。我需要编写一个正则表达式,接受 Twitter 用户名。基本上,我想允许每次使用一个下划线。名称中可以有多个下划线,但这些不应是连续字符。字母数字字符也是允许的。但数字不能作为名称的开头。
以下名称是有效的:
- _myname67 - myname67 - my_name - _my_67_name_
以下名称无效:
- 94myname - __myname - my__name - my name 我在 Rubular 上尝试了几个正则表达式:
- /^[^0-9\s+](_?[a-z0-9]+_?)+$/i - /^([a-z_?])+$/i
我遇到的问题是这些表达式匹配了多个下划线。
以下名称是有效的:
- _myname67 - myname67 - my_name - _my_67_name_
以下名称无效:
- 94myname - __myname - my__name - my name 我在 Rubular 上尝试了几个正则表达式:
- /^[^0-9\s+](_?[a-z0-9]+_?)+$/i - /^([a-z_?])+$/i
我遇到的问题是这些表达式匹配了多个下划线。