工作遇到的问题----过滤特殊字符
2016-01-11 21:27
423 查看
这个是全文匹配,其实和isEqualToString 是一个作用
- (BOOL)matchesRegularExpressionPattern:(NSString
*)regularExpressionPattern
{
NSRange fullRange =
NSMakeRange(0, [selflength]);
NSRegularExpression *regularExpression = [NSRegularExpressionregularExpressionWithPattern:regularExpressionPattern
options:NSRegularExpressionCaseInsensitive
error:nil];
NSRange range = [regularExpression
rangeOfFirstMatchInString:self
options:0
range:fullRange];
if (NSEqualRanges(fullRange, range)) {
returnYES;
}
returnNO;
}
//判断是否含有特殊字符。
- (BOOL)containInvalidString {
//特殊字符集
NSCharacterSet *set = [NSCharacterSetcharacterSetWithCharactersInString:@"@/:;()¥「」"、[]{}#%-*+=_\\|~<>$€^•'@#$%^&*()_+'\""];
//去掉特殊字符
NSString *trimmedString = [selfstringByTrimmingCharactersInSet:set];
if ([selfmatchesRegularExpressionPattern:trimmedString])
{
returnNO;
}
returnYES;
}
- (BOOL)matchesRegularExpressionPattern:(NSString
*)regularExpressionPattern
{
NSRange fullRange =
NSMakeRange(0, [selflength]);
NSRegularExpression *regularExpression = [NSRegularExpressionregularExpressionWithPattern:regularExpressionPattern
options:NSRegularExpressionCaseInsensitive
error:nil];
NSRange range = [regularExpression
rangeOfFirstMatchInString:self
options:0
range:fullRange];
if (NSEqualRanges(fullRange, range)) {
returnYES;
}
returnNO;
}
//判断是否含有特殊字符。
- (BOOL)containInvalidString {
//特殊字符集
NSCharacterSet *set = [NSCharacterSetcharacterSetWithCharactersInString:@"@/:;()¥「」"、[]{}#%-*+=_\\|~<>$€^•'@#$%^&*()_+'\""];
//去掉特殊字符
NSString *trimmedString = [selfstringByTrimmingCharactersInSet:set];
if ([selfmatchesRegularExpressionPattern:trimmedString])
{
returnNO;
}
returnYES;
}
相关文章推荐
- C#工业物联网和集成系统解决方案的技术路线(数据源、数据采集、数据上传与接收、ActiveMQ、Mongodb、WebApi、手机App)
- 常用的各种标准下载网站(HB GB GJB MH)
- [BZOJ4325]NOIP2015 斗地主
- Exercise1_1_20
- LeetCode:Missing Number And First Missing Positive
- 第6章 子过程:
- Android高效加载大图、多图解决方案,有效避免程序OOM
- 关系型数据库基础第四章
- push_back的使用
- Java Swing JTable 表格【7:监听表格数据变化】
- 创建型-单例singleton
- 简单jQuery插件实现
- POJ 2155 Matrix 二维线段树
- MSSQLServer基础03(数据检索(查询))
- MSSQLServer基础03(数据检索(查询))
- Android DiskLruCache完全解析,硬盘缓存的最佳方案
- Bestcoder#61
- 最小值滤波 (C 语言实现)
- leetcode@ [129] Sum Root to Leaf Numbers (DFS)
- 创建型-原型prototype