【发布时间】:2012-08-19 07:47:08
【问题描述】:
我想验证一个文本区域,但我没有得到正则表达式(我花了一天的时间和一堆教程才弄明白)。
基本上我希望能够允许一切(包括换行符和战车),但可能是恶意的字符(那些会导致安全漏洞的字符)。 由于不允许使用的字符很少,我认为创建黑名单比创建白名单更有意义。
我的问题是:Regex 中的标准“除此之外的一切”是什么?
我正在使用 javascript 和 jquery。
我试过了,但它不起作用(这很糟糕,我知道..):
var messageReg = /^[a-zA-Z0-9éèêëùüàâöïç\"\/\%\(\).'?!,@$#§-_ \n\r]+$/;
谢谢。
【问题讨论】:
-
它不起作用是什么意思?使用该正则表达式的代码是什么?
-
这不会对安全起任何作用。无需 javascript 甚至无需使用浏览器也可以提交表单(因为它只是某种类型的 HTTP 请求)。
-
RegEx 并不是真正避免安全漏洞的正确方法。这个thread 可能会感兴趣。 XSS 防御不是用正则表达式来完成的。
-
javascript 验证是为了节省用户等待服务器返回验证错误的时间。它对安全毫无用处。
-
你想接受什么,你想排除什么?
标签: javascript jquery regex textarea