分隔符逗号

时间:2018-06-21 20:59:55

标签: java delimiter comma

我试图分离三个整数并打印出每个整数,但是当我这样做时,会给我输入misMatchException:

if (ref $database{$a}{$b}{$c} ne 'HASH') {
    print "not a hash\n";
}
elsif (exists $database{$a}{$b}{$c}{'d'}){
    print "success!\n";
}

3 个答案:

答案 0 :(得分:4)

这很可能是因为您输入的内容不正确-您可能正在尝试输入类似1, 2, 3的内容。 不起作用,因为您的分隔符只是逗号,而不是逗号+空格。

编写代码的方式,您需要输入1,2,3,,然后按Enter。

另外:请注意,您在public class blah之后缺少左括号。

答案 1 :(得分:1)

要克服内联供稿,请使用scnr.useDelimiter("[ ,\\r\\n]");

答案 2 :(得分:1)

我认为您的输入看起来像这样

1,2,3[enter]

您将定界符设置为“,”-在这种情况下,扫描程序将寻找下一个逗号以完成下一个值的读取,但可以找到它。 您应该以这种形式输入值(必须使用逗号):

1,2,3,[enter]

您可以查看Scanner.reset()文档,以了解它们如何设置默认的空格分隔符:

scanner.useDelimiter("\\p{javaWhitespace}+")

现在,您可以创建将空格或逗号作为分隔符的模式(它使用竖线|在正则表达式中声明OR表示法):

 scanner.useDelimiter(",|\\p{javaWhitespace}+")

此行接受:1,2,3,4 [输入] 有关更具体的输入-使用正则表达式。