import UIKit
/*
[] 表示一个字符 [12345] 表示这一个位置上可以是1,2,3,4,5 一位
{} 表示一个范围 {1,9} 表示1到9这么一段
[a-z] 表示a~z
[0-9] 表示0~9 或者 \d ,为了防止转义 \\d
^[a-z] 表示首字母必须是a~z
\d{2,10} 表示数字有2到10个
[a-z]$ 表示必须以a-z的字母结尾
[^0-9] 表示不能是0-9
. 表示任意字符/数字/符号
* 表示个数不定
? 表示就近匹配
*/
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let str = "a311dadsddabc"
// 1. 创建正则表达式规则
let pattern = "^[a-z].*[a-z]$"
// 2. 创建正则表达式对象
guard let regex = try? NSRegularExpression(pattern: pattern, options: []) else {
return
}
// 3. 匹配字符串中内容
let results = regex.matches(in: str, options: [], range: NSRange(location: 0, length: str.characters.count))
// 4.遍历数组,获取结果[NSTextCheckingResult]
for result in results {
print(result.range)
let string = (str as NSString).substring(with: result.range)
print(string)
}
}
}
网友评论