2013-04-29 27 views
1

我有一个用正则表达式验证的primefaces输入文本区域。我想让用户添加一个额外的行。这是我的代码。我认为允许换行,但不起作用。有任何想法吗?JSF ValidateRegex允许换行

<p:inputTextarea id="txtContent" label="Content Value" required="true" style="height: 100px;width: 250px"> 
    <f:validateLength minimum="5" maximum="65535"/> 
    <f:validateRegex pattern=".*[\s\w\d\.\-\']" /> 
    <p:ajax update="msgContent" event="keyup" /> 
    <p:ajax update="msgs" event="keyup" /> 
</p:inputTextarea> 

回答

1

原则,newline可以通过换行标志,\n(UNIX,Mac的现代),回车符号,\r(旧的Mac),或者两个,\r\n(Windows)中的组合来表示。这使我们得到以下正则表达式模式:

(\\r?\\n)|\\r 

您可以轻松地将此模式合并到验证器中。

+0

是否需要双反斜杠?因为其他人需要单反斜杠才能工作。但是我输入了。* [\ r \ n],但它不起作用。除\的定义之外,还包含\ r和\ n – user1760412 2013-04-30 23:19:49