0

複数行のテキストボックスの行数を制限する方法はありますか?ユーザーが複数行のテキストボックスに最大12行のテキストを入力できるようにしたいだけです。現在、テキストボックスはユーザーがスローするのと同じ数の行を受け入れます。

もう1つのハードルは、複数行のテキストボックスがリストビュー内にあり、JavaScriptを使用してテキストボックス名を取得するのが難しいという事実です。

正規表現バリデーターを使用して、新しい行の数を12に制限できますか?もしそうなら、適切な正規表現は何でしょうか?試しまし^(\n|\r|\r\n){0,12}$たが、まったく動作しません。

4

1 に答える 1

0

これには正規表現バリデーターを使用できるはずです。この式を試してください:

^[^\n]*(?:\n[^\n]*){0,11}$

行をそれぞれ最大65文字に制限する場合は、次を使用できます。

^[^\n]{0,65}(?:\n[^\n]{0,65}){0,11}$

65文字を超える行にソフト改行があるかのように行をカウントする場合は、次のように機能します。

^[^\n]{0,65}(?:\n?[^\n]{0,65}){0,11}$

?の後に\n、改行文字を自己オプションにすることに注意してください。

この式を最適化して、アトミックグループを追加することにより、バックトラッキングを最小限に抑えることができます。次に例を示します。

^(?>[^\n]{0,65})(?>(?>\n?[^\n]{0,65}){0,11})$
于 2013-02-08T01:30:08.050 に答える