Java 在文本区域突出显示句子

Java 在文本区域突出显示句子,java,highlight,Java,Highlight,我必须编写一个程序,在其中我必须突出显示JTextarea中的句子。 我有一个文件叫做原始文件和摘要文件。原始文件将显示在textarea框中,我必须在textarea框中突出显示摘要文件的所有句子 例如。如果原始文件包含“Tendulkar出生于孟买(现在的孟买)他的母亲拉杰尼在保险业工作,他的父亲拉梅什·坦杜尔卡是一位马拉地小说家,以他最喜欢的音乐导演萨钦·德夫·伯曼的名字命名坦杜尔卡。坦杜尔卡的哥哥阿吉特鼓励他打板球。坦杜尔卡还有两个兄弟姐妹:一个是尼廷兄弟,另一个是萨维塔姐妹。“ 上面的

我必须编写一个程序,在其中我必须突出显示JTextarea中的句子。 我有一个文件叫做原始文件和摘要文件。原始文件将显示在textarea框中,我必须在textarea框中突出显示摘要文件的所有句子

例如。如果原始文件包含“Tendulkar出生于孟买(现在的孟买)他的母亲拉杰尼在保险业工作,他的父亲拉梅什·坦杜尔卡是一位马拉地小说家,以他最喜欢的音乐导演萨钦·德夫·伯曼的名字命名坦杜尔卡。坦杜尔卡的哥哥阿吉特鼓励他打板球。坦杜尔卡还有两个兄弟姐妹:一个是尼廷兄弟,另一个是萨维塔姐妹。“

上面的文本显示在文本区域中

在概要文件中,我有一个“坦杜尔卡出生在孟买(现在的孟买)。坦杜尔卡还有两个兄弟姐妹:一个兄弟尼廷,一个姐妹萨维塔。”

我希望这些句子在文本区突出显示。谁能告诉我怎么做? 提前感谢:)

根据:

JTextArea可以显示多行可编辑文本。尽管文本区域可以以任何字体显示文本,但所有文本都使用相同的字体。使用文本区域允许用户输入任意长度的未格式化文本或显示未格式化的帮助信息

您可能希望使用JEditorPane及其子类JTextPane在Swing中使用富文本区域,而不是纯JTextArea。

您可以使用:

Highlighter h = textArea.getHighlighter();
h.removeAllHighlights();
int pos = originalText.indexOf(summaryText, 0);
h.addHighlight(pos ,
               pos  + summaryText.Length,
               DefaultHighlighter.DefaultPainter);