正则表达式验证字符串如“1/2”

时间:2012-01-09 14:36:40

标签: ruby-on-rails regex

我只需要匹配数字或整数之间包含一个字符的字符串。

示例:

1 YES
1/2 YES
some_text NO
some/test NO
some NO
2///2 NO
/12 NO
1/2/ NO
1.2/3 NO

编辑: 通过rubular.com,我试图检查这个正则表达式:/\d+(\/\d+)?

正则表达式应该如何?

1 个答案:

答案 0 :(得分:4)

如果您只包括整数或分数:

\d+(\/\d+)?

如果您还想允许小数:

\d+(\.\d+)?(\/\d+(\.\d+)?)?

编辑:请注意,我对你真正想要的东西做了很多假设。 Bart Kiers对你的问题的评论非常重要 - 我冒昧地假设你想要的是数字。如果不是这样,请澄清问题。

编辑2:我也在做一个更重要的假设。您的问题是“包含 /或整数的字符串。”如果你想确保字符串只是一个数字而不是其他内容,那么将^添加到行的开头,将$添加到结尾。例如:

^\d+(\/\d+)?$