Java 如何获取JTextPane的内容?

Java 如何获取JTextPane的内容?,java,jtextpane,Java,Jtextpane,大家好!我遇到了一个小问题 我需要一些帮助或想法……我在JTextPane中有一些单词,我想一个接一个地读 我知道我必须用StringTokenizer或这个来做 Element doc=textPane.getDocument().getDefaultRootElement() 谢谢你的任何想法或帮助。如果您有任何建议,我们将不胜感激。您可以通过以下方式从JTextPane获取文本: 然后,如果要获取每个单词,可以使用正则表达式将每个非单词字符拆分: String[] words = text

大家好!我遇到了一个小问题

我需要一些帮助或想法……我在
JTextPane
中有一些单词,我想一个接一个地读

我知道我必须用StringTokenizer或这个来做

Element doc=textPane.getDocument().getDefaultRootElement()


谢谢你的任何想法或帮助。如果您有任何建议,我们将不胜感激。

您可以通过以下方式从
JTextPane
获取文本:

然后,如果要获取每个单词,可以使用正则表达式将每个非单词字符拆分:

String[] words = text.split("\\W"); // "\\W" is \W, which is non-word characters
如果您只想基于空格进行操作,可以使用:

String[] words = text.split("\\s"); // "\\s" is \s, which is whitespace
然后,要“逐个读取”,请迭代数组中的每个元素:

String text = txtpane.getText();
String[] words  text.split("\\W");
// or: String[] words = txtpane.getText().split("\\W")
for (String word : words) {
    System.out.println(word);
    // do whatever
}

如果“单词”是指由空格分隔的文本字符串,则可以使用
split
方法。非常感谢alex23和WChargin欢迎来到StackOverflow!如果你发现这个答案是有用的,请考虑它的投票(灰色箭头)或标记它是公认的答案,如果它完全解决了你的问题(绿色勾选大纲)。你的帖子真的帮助了我。
String text = txtpane.getText();
String[] words  text.split("\\W");
// or: String[] words = txtpane.getText().split("\\W")
for (String word : words) {
    System.out.println(word);
    // do whatever
}