2011-06-18 6 views
1

"[+ - ]?[0-9] +"という引数を使用して、入力を符号付き整数に制限するためにTextItemのsetKeyPressFilterメソッドを使用しようとしています。しかし、私が入力できる唯一の文字は数字です、記号は表示されません。正規表現は間違っていますか?smartgwtと正規表現

答えて

0

正規表現は動作しません理由は、それがで存在することが強制ということです少なくとも1桁であるため、符号桁を入力することはできません。数字を入力し、左矢印を文字列の先頭に入力してから符号桁を入力すると、正規表現を[-+]?\d*に変更することができます。

それ以外の場合は、入力されている1文字に正規表現を適用します(setKeyPressFilter)。そして、もちろん、これは同じ理由でうまくいかないでしょう:あなたはそこに桁があるように強制しているので、その桁と数字の両方に1つのキーを押しても余裕はありません。

+0

奇妙な! http://www.pagecolumn.com/tool/regtest.htm?rp=%5B-%2B%5D%3F%5B0-9%5D%2B&rf=g&me=2&ts=this%20is%20text%20andと思われるため%20costs%20--2345%20 or%204232特定の正規表現を処理します。 –

0
+ and - are special character u cant use directly 

二重引用符の内側に単一引用符を削除し、{私がここで直接入力カント}使用

"'\'+'\'-" 

Basic syntax

+0

私はあなたの言うことを理解できません... setKeyPressFilterはString引数、つまり正規表現をとります。だから私は文字列として正規表現を定義する必要があります(それが理由です "")。結局のところ、正規表現を書いているときに[]に文字を含めると、特別なことは止まります! –

+0

ごめんなさい!今、私はあなたが何を言ってみたのか理解しています... –

+0

okおかげで.. .. – K6t