uitextfield必须键入数字小数位数不超过三位用正则表达式解决方案

- (void)textFieldDidEndEditing:(UITextField *)textField

{

        NSString *tempstr=(NSMutableString *)textField.text;

        NSError *error;

        //用正则表达式判断输入是否是数字,三位位数不超过三位

        NSRegularExpression *regex = [NSRegularExpressionregularExpressionWithPattern:@"^[0-9]+(.[0-9]{1,3})?$"options:0 error:&error];

        

        if (regex != nil) {

            NSTextCheckingResult *firstMatch = [regex firstMatchInString:tempstr options:0 range:NSMakeRange(0, [tempstr length])];

            

            if (firstMatch) {

      //匹配

                ob.wcsl = (NSMutableString *)textField.text;

            }

            else

            {

      //不匹配

                UIAlertView *alert=[[UIAlertViewalloc] initWithTitle:@"输入了非法字符或小数位数超过了三位" message:nil delegate:nilcancelButtonTitle:@"ok"otherButtonTitles:nil];

                [alert show];

                [alert release];

            }

        }

   }

转载于:https://www.cnblogs.com/zhangyamin/p/3374645.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值