ObjC正则表达式验证

试过ObjC的regkit这个框架。

也用过内置的正则表达式验证。

最后发现有个非常简单的方法就可以做到验证正则表达式。那就是NSPredicte这个类提供的方法。

这里有验证邮箱地址的正则为例:


1

2

3

4

5

6

7

8

NSString *emailRegEx = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";

NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegEx];

//Valid email address

if ([emailTest evaluateWithObject:detail] == YES)

{ ... }

//Invalid email address

else

{ ... } 

 

具体使用NSPredicate的方法可以参考我的博文

欢迎加群互相学习,共同进步。QQ群:iOS: 58099570 | Android: 330987132 | Go:217696290 | Python:336880185 | 做人要厚道,转载请注明出处!http://www.cnblogs.com/sunshine-anycall/p/3816611.html

时间: 2024-12-02 22:10:22

ObjC正则表达式验证的相关文章

Shell正则表达式验证IP地址

  这篇文章主要介绍了Shell正则表达式验证IP地址,本文给出了多个方法,并分别给出实现代码,需要的朋友可以参考下 本机多个IP 代码如下: ifconfig | awk '/inet/{print $2}' | awk -F: '{print $2}' 首先,先用这个来着 代码如下: CheckIPAddress() { echo $1 > /tmp/tmpserverip echo $1 |grep "^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1

利用js正则表达式验证手机号,email地址,邮政编码

 利用js正则表达式验证手机号,email地址,邮政编码.需要的朋友可以过来参考下,希望对大家有所帮助 手机号码的验证(13开头和158,159开头,共11位)  代码如下: var re; var ss=document.getElementById('textbox3').value; re= /^(13[0-9]{9})|(15[89][0-9]{8})$/ if(re.test(ss))  {    document.getElementById('label3').innerText=

js正则表达式 验证百分数,要求只能输入0%-100% 之间的数

问题描述 js正则表达式 验证百分数,要求只能输入0%-100% 之间的数 填写举例:0%.50%.100%,可能是0%-100%其中的任何数字,最多小数点后保留2位,例如97.51%/98.32%.? 解决方案 ^(100|[1-9]d|d)(.d{1,2})?%$ 解决方案二: Js中运用正则表达式验证输入是否有特殊字符 . 解决方案三: ^(100|[1-9]d|d)(.d{1,2})?%$ 解决方案四: ^([1-9]{1}[0-9]{0,1}|0|100)(.d{1,2}){0,1}%

求一个正则表达式验证登录账号密码格式的~~多谢啦~~~~~~~~~~~~~~~~~

问题描述 求一个正则表达式验证登录账号密码格式的~~多谢啦~~~~~~~~~~~~~~~~~ 用户.管理员.特殊账号设置密码必须强制符合以下要求:1. 不能包含用户名2. 密码内容必须包含以下元素中的3种:? 英文大写字母(A -- Z)? 英文小写字母 (a -- z)? 数字r (0 -- 9)? 特殊字符 多谢啦~~我参考别人写的,满足不了上面的需求,,谢谢啦~^(?![a-zA-Z0-9]+$)(?![^a-zA-Z/D]+$)(?![^0-9/D]+$).{820}$ 解决方案 (?=

使用正则表达式验证登录页面输入是否符合要求

先给大家展示下效果图: 废话不多说了,直接给大家贴代码了,具体代码如下所示: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <script src="js/jquery-1.8.0.min.js"></script> <script> $(f

JavaScript正则表达式验证代码(推荐)

RegExp:是正则表达式(regular expression)的简写. 正则表达式描述了字符的模式对象.可以使用正则表达式来描述要检索的内容. 简单的模式可以是一个单独的字符.更复杂的模式包括了更多的字符,并可用于解析.格式检查.替换等等. //判断输入内容是否为空 function IsNull(){ var str = document.getElementById('str').value.trim(); if(str.length==0){ alert('对不起,文本框不能为空或者为

比较常用证件正则表达式验证大全

下面都是我收集的一些比较常用的正则表达式,因为平常可能在表单验证的时候,用到的比较多.特发出来,让各位朋友共同使用. // 身份证验证 jQuery.validator.addMethod("isIdCard", function(value, element, type) { if ($(type).val() === '1') { var re = /(^/d{15}$)|(^/d{18}$)|(^/d{17}(/d|X|x)$)/; return this.optional(el

正则表达式--QQ微信、优酷前端 邮箱正则表达式验证 Bug_正则表达式

拿邮箱验证来说,网上绝大部分人写的邮箱验证正则表达式代码都不能验证这邮箱: i@julying.com,也不能验证 xxxxxx@i.com . 上次我发现youku.com(优酷网)用户注册就有这个问题,见图:     今天发现 QQ微信 也同样有这个问题:     他们都不能验证一个字母的域名或一个字母的用户名. 我认为,他们绝不是故意不让这样的用户注册,而是这样: 很久之前,最初写正则的程序员偷懒了,没有写 这样情况的正则表达式验证, 他当时可能觉得这样的正则比较麻烦,而且可能这样的邮箱实

java正则表达式验证邮箱、电话号码示例_java

下面的代码使用正则表达式验证输入格式包括了验证邮箱和验证手机号码 复制代码 代码如下: package com.firewolf.utils; import java.util.regex.Matcher; import java.util.regex.Pattern; /**  * 使用正则表达式验证输入格式  * @author liuxing  *  */ public class RegexValidateUtil {  public static void main(String[]