正则表达式提取登录用户名

时间:2017-05-12 14:35:12

标签: javascript node.js regex

目前,我有一个Web聊天项目,我使用socket.io实时发送和接收消息。 如果用户输入,我需要登录。

我尝试使用正则表达式,但我是初学者,格式可以是倍数:

  • 我的登录名是sayuri.mizuguchi
  • 我的登录?那么,sayuri.mizuguchi好吗?

登录时的格式始终为firstname.lastname

在这种情况下,所有消息都保留在参数内,并且这些数据保存在一个变量中,但我真的尝试使用multiples regex进行测试,任何工作都可以。 有人可以帮帮我吗?

示例:

console.log(data.usertyped); // My login is sayuri.mizuguchi

我需要像条件一样使用,例如:input.text.find('\d{11}')即使用户输入"我的号码是11122233344"我需要同样才能登录。

谢谢你。

1 个答案:

答案 0 :(得分:1)

尝试匹配----.----格式的字符串,其中-表示单词字符a-zA-Z0-9或{{1}你必须使用_元字符,这意味着所有这一切:

\w

使用^\w+\.\w+$ ^锚点确保正则表达式应该从输入字符串的开头到其末尾开始匹配,否则它应该失败。像以下情况一样:

  1. $
  2. @firstname.lastname
  3. 要考虑添加更多字符,您需要使用字符类:

    mohammad.hoss*ein

    此外,您应该知道^[\w@-]+\.[\w@-]+$ 期望的最不需要的字符是句号两边的单词字符:

    ^\w+\.\w+$