【问题标题】:Javascript/.NET regexJavascript/.NET 正则表达式
【发布时间】:2011-06-18 15:55:16
【问题描述】:

我需要一个 Javascript 和 .NET 正则表达式来检查字符串并让我知道字符串是否只包含一个字符而不是空格。

我想阻止用户输入诸如“wwwwwwwwww wwwwwwwwwww wwwwwwwwwww”之类的内容,但允许他们输入诸如“cccccccc ddddddddd”之类的内容。

我不擅长正则表达式,所以很抱歉没有提供代码。

【问题讨论】:

  • 对您的问题有点困惑...您最多允许一个空格字符吗?不允许空格字符吗?

标签: c# javascript .net regex


【解决方案1】:
 string [] inputs = {" sdfasf asdf ", " wwwwww wwwwwww ", " aaaaa bbbb ccccccc"};
 foreach (string input in inputs)
 {
    var match = Regex.Match (input, @"^\s*(\w)(?:\1|\s)*$");
    Console.WriteLine (input + "\t" + match.Success);
 }

正则表达式不使用任何特殊字符,我相信它也可以在 javascript 中使用。在 C# 中,它会打印:

sdfasf asdf    False
wwwwww wwwwwww         True
aaaaa bbbb ccccccc     False

【讨论】:

  • 您的正则表达式将匹配“wwwwwwww wwwwwwwwwww wwwwwwwwwww”,这是 OP 不想要的。
  • 这是对的,尽管 OP 可能想要使用“\S”而不是“\w”。
  • @Darin 我想他想 match 那个字符串,这样它就可以被禁止了。换句话说,他希望正则表达式检测非法输入。
  • @Pointy,但这与此正则表达式返回 false 的“aaaaa bbbb ccccccc”相矛盾。
  • 我认为这个解决方案提供了 OP 想要的东西,尽管他可能需要使用正则表达式是否失败而不是成功。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-28
  • 1970-01-01
  • 2012-01-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多