只能输入 1 或者1-5 或者1-6,2,2-3 这样的格式。有没有具体的方法啊?
这种需求最好不要使用正则,
直接判断就是.
简单使用 Swift 实现如下. (注意,代码我是直接在这里写的.可能有少量语法错误)
另外你自己再完善一下对于空白字符的兼容性.
func isValidPageRange(pageRange:String)-> Bool{
let comps = pageRange.split(separator:"-")
if comps.count > 2{
return false
}
guard let start = Int(comps[0]) else{
return false
}
if comps.count == 2{
if let end = Int(comps[1]){
return start <= end
}else{
return false
}
}
return true
}
func isValidPageRanges(pagesStr:String) -> Bool{
let comps = pagesStr.split(separator:",")
for comp in comps{
if !isValidPageRange(pageRange:comp){
return false
}
}
return true
}
1 回答891 阅读
2 回答709 阅读
2 回答684 阅读
1 回答685 阅读
1 回答757 阅读
676 阅读
1 回答308 阅读
试试