java - 如果我分割这个字符串,为什么我的 string.length 是 0 ?

标签 java arrays split string-length

这可能是一个非常简单的问题,但我将首先给您代码。

import java.util.Scanner;

public class help {
public static void main(String args[]) {
    Scanner sc = new Scanner(System.in);

    System.out.print("Give: ");
    String s = sc.next();

    String[] parts = s.split(".");

    System.out.println(parts.length);
}
}

即使我给出 192.168.1.1.1.1.1 或 1.2.3 或 ... parts.length 将始终为 0,有人可以向我解释为什么以及如何在我输入 1.2 时让它为 4 .3.4?

最佳答案

您需要 s.split("\\.") 因为 split 的参数是正则表达式。正则表达式中的 . 字符表示“任何字符”,您需要使用反斜杠对其进行转义,使其表示“点”。

关于java - 如果我分割这个字符串,为什么我的 string.length 是 0 ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23818325/

相关文章:

java - 无法在 Eclipse Oxygen 上设置 Selenium 3

java - 错误 ebay [CDATA[ 应用程序内部错误 ]]

c# - 对如何使用 List<string>[] 感到困惑

java - Java正则表达式的问题

java - 在它的关键部分执行的线程可以在 Java 中被抢占吗?

java - 调整图像大小时内存不足

java - [JAVA][家庭作业] Pickomino 游戏

javascript - D3 : What is a Bisector?

javascript - 我的 JavaScript split 函数不起作用

python - pandas str.split给我一个意想不到的语法错误