【发布时间】:2014-04-28 18:40:03
【问题描述】:
好的,我有这个字符串 ssn,它应该是一个格式正确的社会安全号码。我需要检查以确保 ssn 中没有非数字,但破折号除外。我已经创建了一个循环,以确保破折号位于正确的位置,但我不确定如何让它检查是否有非数字字符而没有破折号弄乱检查。有没有办法可以从这项检查中排除破折号?
这是我当前的代码,我只是不确定如何排除 - 的。 (对不起,完全忘记了)
ssn是用户输入的字符串对象。
for (int i = 0; i < ssn.length(); i++)
{
if (Character.isDigit(ssn.charAt(i))
}
【问题讨论】:
-
使用像
^[1-9\-]$这样的正则表达式 - 如果每个块有一定数量的破折号和/或数字,请相应地修复。 -
@Coffee 一个简单的评论,程序员的生活
-
如果您尝试此操作并遇到障碍,请返回,显示您的代码,解释什么不起作用,然后收到一些建议。
-
更新了代码,忘记了。
标签: java