私は2つのソースファイルsearchworkerとsearchvalidatorを持っています。作業者はプログラムがどのように機能するか(論理的に)、バリデーターはユーザーの入力を検証するだけです。Javaで文字列の長さをデフォルトの長さに戻す方法は?
私の場合、ユーザーが9桁のキー(例:GGHYK1221)を例外なく入力すると、システムは正しく動作します。ユーザーが9桁以下または9桁を入力すると、エラーメッセージが表示されます。
実際には、キーはGG-H-YK-1221です。したがって、システム仕様と一致しません。最初のハイフン( - )は手動で削除する必要があります。今、私は最大12桁のユーザー入力を許可し、ハイフンを削除したいと思います。 regexを使ってハイフンを削除しましたが、バリデータを渡すために入力の長さが9に固定されています。これや他の方法を解決するための任意のアイデア?
私はJavaを使用しています。
あなたは
バリデータがどのように実装されているか、または「入力の長さが9に固定されています」という意味がはっきりしません。つまり、バリデーションが行われる前にバリデーションが行われることを意味します。String.replaceAll () '? – lockcmpxchg8b
という意味です。私はこれを解決するために何も考えていない。 String.replaceAll()の後で検証が行われます。今、バリデーターは9桁しか許されません。私は9桁以上の数字を許可し、ハイフンを置き換えることをやった。しかし、どのように入力長をデフォルトの長さの検証(9)に戻すかを設定します。 –
入力の長さはどこに保存されていますか?それはGUIコンポーネント上にありますか?あなたは現在、ユーザー入力をどのように取得してそれを変更するのですか? – lockcmpxchg8b