NSRange range = [text rangeOfString:@"(?:[^给])*\打电话" options:NSRegularExpressionSearch];
range.length = range.length-3;
if (range1.location != NSNotFound) {
searchText = [NSString stringWithFormat:@"%@",[text substringWithRange:range]];
NSLog(@"%@/n", [text substringWithRange:range]);
}
(?:[^给]) ^匹配输入字符串的开始位置。如果设置了RegExp对象的Multiline属性,^也匹配“\n”或“\r”之后的位置。
匹配前面的子表达式零次或多次(大于等于0次)。
\打电话 匹配输入字符之后的 (ps:本来是打算直接匹配‘打电话’这三个字之前的坐标,奈何木有找到方法,如果有知道的大神,请不吝赐教)
range.length = range.length-3;
这就是上一段 木有找到方法之后 暂时懒用的方法 坐标往前挪动3位。
NSRange rangeTest = [text rangeOfString:@"(?:[^呼叫])*$" options:NSRegularExpressionSearch];复制代码
$ 匹配输入字符串的结束位置。 匹配到这就结束了 如果不加这个rangeTest的值会报错。
刚刚写完,其实是思绪是有点乱的 等捋一捋头发之后再整体一下吧~~
有什么错误或者不正确或者不太好的地方 还望大神留言指教 3Q