1

私はいくつかのUITextViewsを持っています。ユーザーがデータを入力すると、このデータが Web サービスを使用してデータベースに送信されます。データベースは、「&」などの特殊文字でエラーを表示します。したがって、ユーザーがこの特殊文字を含むデータを送信しようとしたときにユーザーをブロックしたい、またはデータの送信時にメッセージが表示されるはずです」つまり、そのテキストビューを検証する方法は? 誰かがそれについて知っているなら、私を助けてください。どうもありがとう。

4

1 に答える 1

5

最初の方法は、以下のサンプル コードのようにすべての受け入れられた文字を記述し、範囲外の文字が見つかった場合はメッセージを表示します。

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
    NSCharacterSet * set = [[NSCharacterSet characterSetWithCharactersInString:@"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLKMNOPQRSTUVWXYZ0123456789"] 反転セット];
    if ([textField.text rangeOfCharacterFromSet:set].location != NSNotFound)
    {
        NSLog(@"この文字列には不正な文字が含まれています");
        FALSE を返します。
    }
    TRUE を返します。
}

または、正規表現を使用して、別の方法で同じことを行います...

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
    if ([textField.text isMatchedByRegex:@"[^a-zA-Z0-9]"])
    {
        NSLog(@"この文字列には不正な文字が含まれています");
        FALSE を返します。
    }
    TRUE を返します。
}
于 2012-08-25T05:57:06.833 に答える