我一直在努力为我的一个TextField处理正则表达式,只允许利率格式的数字。
我希望字段允许在“。”之前输入最多2位数字。字符和最多2位数。
有效格式: -
1,10,1.2,11.4,15.24
字段的最大长度为5个字符
尝试了一些,但没有成功。
请帮忙。提前谢谢。
答案 0 :(得分:4)
假设您想要与整个字段匹配,我认为这可能会有效:
^\d{1,2}(\.\d{1,2})?$
答案 1 :(得分:1)
尝试以下代码
let string = "10.55"
if let match = string.range(of: "^\\d{1,2}(\\.\\d{1,2})?$", options: .regularExpression) {
print("Match")
}
或者你也可以使用后卫
guard let match = string.range(of: "^\\d{1,2}(\\.\\d{1,2})?$", options: .regularExpression) else {
return
}