【问题标题】:PHP/jQuery/Javascript - Allow only numbers and some characters in variablePHP/jQuery/Javascript - 在变量中只允许数字和一些字符
【发布时间】:2012-09-23 22:28:45
【问题描述】:

我需要验证用户是否在输入字段中输入了所需的字符,如果没有,我需要像这样格式化输入:

起始变量: +42 88 66 44 3, +42 (4) 87/654321; +42 3 123456

所需变量: +428866443, +42487654321, +423123456

所以基本上我需要从变量中清除所有不是数字的字符,并且只允许像+,;- 这样的符号。

因为我使用的是 AJAX 请求,我希望能同时使用 PHP 和 Javascript 的代码。

【问题讨论】:

  • 是三个单独的条目,还是 一个 条目?而且,说真的,你有没有实施任何东西?你卡在哪一部分?
  • 很抱歉,正如 HillBilly.Developer 所说,我们不会为您编写代码。

标签: php javascript jquery regex


【解决方案1】:

要从字符串中删除无效字符,请使用 PHP 和 JAVASCRIPT 中的正则表达式。

PHP

$s = '+42 88 66 44 3, +42 (4) 87/654321; +42 3 123456';
$n = preg_replace('~[^\d\+,;-]~', '', $s);
print_r($n); 

JAVASCRIPT

var s = '+42 88 66 44 3, +42 (4) 87/654321; +42 3 123456';
var n = s.replace(/[^\d\+,;-]/g, "");
console.log(n);

但更好的做法是,如果用户输入错误的格式,则显示错误。您将需要一些验证来完成...

【讨论】:

  • 转义字符类中的-,或将其移至开头/结尾。例如:[^\d+,;-]
  • 这段代码,php 和 js,对我有用。在发布作为答案之前,我已经对其进行了测试。但是,好的,我已经更正了我的答案。 Tnx
  • 当然,我会通知用户他可以输入的内容。非常感谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-04-26
  • 2010-12-09
相关资源
最近更新 更多