如何在Java Scanner中转义分号

时间:2017-02-23 05:07:30

标签: java escaping java.util.scanner

我试图在Java中使用<span class="device image fit"><section id="video"> <video src="images/Compassionate%20Release%20Healthcare%20Network.mp4" width="100%" controls="true"> </video> </span> 类进行输入。

我的代码是:

Scanner

我的输入类似于:

Scanner scan = new Scanner( System.in);
String newline = scan.next();

我尝试用新字符串替换上面的整个字符串:

india gate;25;3
使用

new delhi;23;2

问题是它只替换字符串中的第一个单词,输出类似于:

 .replace(str1, str2)

如何使用india delhi;25;3 将其作为整个字符串?

3 个答案:

答案 0 :(得分:1)

使用;作为此分隔符

while (scanner.hasNextLine()) {
    lineScanner = new Scanner(scanner.nextLine());
    lineScanner.useDelimiter(";");
    String article = lineScanner.next();
    // and so on...
}

答案 1 :(得分:1)

使用.replaceAll("india gate;25;3", "new delhi;23;2");

<强>输出

new delhi;23;2

答案 2 :(得分:0)

您应该了解docker build -t foo-build . docker run --name=foo-build -v ~/.ssh/id_rsa:/root/.ssh/id_rsa foo-build docker cp foo-build:/foo foo docker rm -f foo-build docker rmi -f foo-build 类的工作原理。默认情况下,它基本上使用空格作为Scanner的分隔符。这意味着当您调用next()时,它会一直读取,直到找到空格,然后返回它读取的内容。因此,当您在next()上致电next()时,它会显示"india gate;25;3"然后点击一个空格。所以它会返回"india"。如果您想要直到读取换行符(看起来像是这样),您想使用"india"