java - 拆分段落中的每个字符串

标签 java regex algorithm

我正在尝试从一个段落中拆分每个字符串,该段落具有适当的基于语法的标点分隔符,例如 ,.!?或更多(如果有)。

我正在尝试使用 Java 实现此目的。这是我的代码。

private void printWords(String inputString) {
        String[] x = inputString.split("[.!,\\s]");
        for(String temp: x){
            System.out.println(temp);
        }

    }

示例输入字符串:

他是 srk。哦!我是srk的好 friend 。

我的输出:

He
is
srk

Oh

I
am
a
very
good
friend
of
srk

这里有一个问题,输出中有空格。我的正则表达式应该是什么来拆分任何给定段落中的字符串,输出中没有空格。

最佳答案

您需要添加 + 以使您的表达式匹配一个或多个 字符:

String[] x = inputString.split("[.!,\\s]+");

关于java - 拆分段落中的每个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16621369/

相关文章:

java - 检索一个 Akka actor 或如果它不存在则创建它

python - 正则表达式在方括号中保留一个选择

c - 从 c 中的 .txt 中提取数据

java - 围绕中心坐标排序坐标 - JAVA

java - 如何实现根据用户选择返回类型的Java函数?

java - 有没有办法更新PreparedStatement

java - 我正在更新 Firebase 中一个对象的子对象,然后使用事件监听器拉取同一对象,但它没有更新 UI?

c# - 在 C# 中用正则表达式替换文本中的字符

python - 在 Python 中使用正则表达式替换除特定元素之外的所有元素

algorithm - 使用法线沿二维平面置换 3D 顶点