【问题标题】:How to limit users from entering english characters in a textbox如何限制用户在文本框中输入英文字符
【发布时间】:2010-01-17 15:36:21
【问题描述】:

我是否需要使用正则表达式来确保用户输入的是英文?除非英文字符外,所有字符均有效。

如何验证此文本框?

【问题讨论】:

  • “英文字符”是一个模棱两可的规范。 “6”是“英文字符”吗? “é”呢? (在你说不之前,请考虑诸如咖啡、简历、未婚夫等词。)你需要更具体。
  • 它的重复问题你可以在这里得到答案stackoverflow.com/questions/150033/…
  • 不仅是@John Feminella 已经说过的,还有所有的标点符号。像“™”这样的符号会被认为是英文字符的一部分吗?
  • @John - 为了验证这个文本框,是的 6 是一个英文字符。 @Miguel - 是的 TM 也是一个有效字符。

标签: c# asp.net javascript


【解决方案1】:

正则表达式可以很好地解决这个问题。类似的东西

^[a-zA-Z0-9 ?!.,;:$]*$

将是一个很好的起点。它将允许所有字母和数字字符,以及一些常见的标点符号。您需要根据您对英文字符的定义进行更改。

在此处查看regex docs 了解更多信息。

【讨论】:

  • 好的正则表达式。补充一点,您可以使用 RegularExpressionValidator 实现此正则表达式并将文本框分配为“ControlToValidate”:msdn.microsoft.com/en-us/library/eahwtc9e(VS.71).aspx
  • 我对英文字符的定义是任何英文字母、数字和符号。这是我正在尝试做的事情的背景。我有一个将文本转换为不同格式的应用程序。目前,我使用的插件只支持英文。在通过第 3 方组件之前,我需要进行验证。
  • 在这种情况下,我会选择 Kibbee 的回答 :-) +1 to Kibbee
  • 是的。基本上,它只允许字母、数字、空格和? ! . , ; :您必须更改它(请参阅链接文档)以满足您的特定需求。
【解决方案2】:

这与正则表达式无关,gurukulki 引用的链接也没有回答这个问题。要更改语言,您需要在您的网站中实现本地化:

http://www.west-wind.com/presentations/wwdbResourceProvider/introtolocalization.aspxlink text

http://www.codeproject.com/KB/aspnet/localizationByVivekTakur.aspx

【讨论】:

    【解决方案3】:

    您可以使用FilteredTextBox 表单 ASP.NET AJAX。

    【讨论】:

      猜你喜欢
      • 2012-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-30
      • 2023-03-09
      • 1970-01-01
      • 1970-01-01
      • 2017-01-23
      相关资源
      最近更新 更多