在java String中插入标点符号

时间:2013-06-22 03:08:26

标签: java

是否有自定义方式在java String中插入标点符号?

假设我有这个小程序:

class Punctuation Marks {
public static void main (String[]args) {

String Greetings="Hello how are you";

System.out.println("Greetings");
}
}

预期输出:你好,你好吗。

3 个答案:

答案 0 :(得分:2)

这个怎么样:

String greetings = "Hello" + "," + " how are you";

或者这个:

String greetings = "Hello how are you";
greetings = greetings.substring(0, 5) + "," + greetings.substring(5);

或者这个:

String greetings = "Hello how are you";
greetings = new StringBuilder(greetings).insert(5, ",").toString();

如果您知道应该去哪里,插入标点符号是微不足道的。但如果你事先不知道确切的地方,那就不可能了!

答案 1 :(得分:1)

在指定位置插入标点符号很简单,只需使用StringBuilder.insert(int index, char toInsert);以编程方式确定标点符号所在的位置,以及使用什么类型,几乎不可能。

答案 2 :(得分:0)

答案的要点是自动标点符号几乎不可能。

为什么?

基本上是因为有很多单词序列可以用不同的方式标点,以表示不同的东西。例如。

  the cow jumped over the hill I saw another cow

可以标点为

  The cow jumped.  Over the hill I saw another cow. 

  The cow jumped over the hill.  I saw another cow.

这显然意味着不同的事情。 (可以告诉我哪一个是正确的?为什么?如果现场有痣,你仍然是正确的吗?)

基本上,决定哪些可能的替代方案是“正确的”替代方案需要深刻理解在它们出现的上下文中 这很可能超出了自然语言处理的技术水平,当然也不是普通应用程序应该尝试的东西。