仅接受+和 - 符号的电话号码验证

时间:2014-08-21 13:19:34

标签: c# javascript jquery asp.net

我必须编写正则表达式,只接受两个符号+和 - 并且可以是任何否。数字,但+应该是第一个标志,如果它在那里

3 个答案:

答案 0 :(得分:3)

试试这个

^\+?[0-9-]+$

Check here这是印度人的数字。

答案 1 :(得分:3)

我假设以下内容:

  • +可能只在数字的开头
  • -不应该
    • 在数字的开头或结尾
    • 连续重复

你可以试试这个正则表达式:

^\+?(?:[\d]+\-)*[\d]+$

传递以下字符串示例:

  • + 12-34-5678-90
  • 12-345-678-90
  • 1234567890

失败以下字符串示例:

  • ++ 12-34-5678-90
  • 12 + 34-5678-90
  • 12-34-5678-90 -
  • 12--34-5678-90

修改

正如@Alovchin指出的那样,OP表示需要允许点(.)以及one of the answer comments中的数字。虽然这个要求没有反映在这个问题中,但我将在这里添加它。只是在案例中。

如果要求允许点(.),则需要将上述正则表达式更新为以下内容。

^\+?(?:[\d]+[\-\.])*[\d]+$

希望这有帮助。

答案 2 :(得分:0)

C#中试试这个:

^\+?(?![\-\.])[\d\-\.]+(?<![\-\.])$

Tanzeel Kazi 有更好的答案。