Swift ios正则表达式只允许正数1和更高

时间:2016-08-15 18:46:59

标签: ios regex swift xcode

我正在尝试创建一个只允许正数从1开始向上的正则​​数 E.g:

1 // pass
23 // pass
023 // fail
00234 // fail
2340 // pass

到目前为止,我有"^0[0-9].*$",但这只允许从0开始的数字,我不想要。

那么我怎样才能制作一个只支持正数/整数的正则表达式

3 个答案:

答案 0 :(得分:2)

  

我的意思是从1开始上升

不在0中开头的十进制数的正则表达式如下:

^[1-9][0-9]*$

请注意,此正则表达式将匹配Swift中无法表示为内置数字类型的数字序列。

答案 1 :(得分:1)

使用以下正则表达式输入从1到9的数字

" ^ [1-9] [0-9] * $"

答案 2 :(得分:1)

如果您的字符串仅包含可能0填充的数字,请使用hasPrefix

let str = "00234"
let match = !str.hasPrefix("0") // false