允许textfield coldfusion中的引号

时间:2013-11-16 18:26:57

标签: regex coldfusion coldfusion-10

我正在构建一个表单,用户可以通过该表单提交文章。我当前的正则表达式只允许某些字符,并按照它应该工作,虽然我不知道如何允许引号。这是代码

<cfif refind ("[^A-Z a-z 0-9\\+\-\?\!\.\,\(\)]+", trim(form.articleText)) and len (trim(form.articleText)) gte 15>
     <cfset msg = "The article can not contain special characters.">
</cfif> 

我尝试在c#中使用&amp; quot但它不起作用!

2 个答案:

答案 0 :(得分:3)

在角色类中添加引号:

<cfif refind ("[^A-Za-z0-9 +?!.,()\\""'-]+", trim(form.articleText)) ...

答案 1 :(得分:1)

anubhava的回答为您提供了所要求的内容,但您可能所需的解决方案实际上是完全不同的:在CF10中使用ESAPI encodeForX函数来编码输出适合其上下文,例如encodeForHtml,而不是试图限制可以写入的字符并不断更新它。

最多,您可能需要以下内容:

<cfif refind('[[:cntrl:]]',form.articleText) >
    <cfset msg = "The article can not contain control characters.">
</cfif>

这将阻止不可打印的控制字符,同时不会阻止完美合理的字符,如重音字母,货币符号等。