我试图使用正则表达式将文本拆分为JTextArea,然后将字符串拆分为\n,但是这不起作用,我还try 了\r\n|\r|n和许多其他正则表达式的组合. 代码:

public void insertUpdate(DocumentEvent e) {
    String split[], docStr = null;
    Document textAreaDoc = (Document)e.getDocument();

    try {
        docStr = textAreaDoc.getText(textAreaDoc.getStartPosition().getOffset(), textAreaDoc.getEndPosition().getOffset());
    } catch (BadLocationException e1) {
        // TODO Auto-generated catch block
        e1.printStackTrace();
    }

    split = docStr.split("\\n");
}

推荐答案

这应该涵盖你:

String lines[] = string.split("\\r?\\n");

你只需要担心两条新线(UNIX和Windows).

Java相关问答推荐

验证使用GCP生成的非对称密钥时签名不起作用

在Java中将Charsequence数组更改为String数组或List String<>

有关手动创建的包的问题

根据对象和值的参数将映射<;T、值&>转换为列表<;T&>

具有多种令牌类型和段的复杂Java 17正则表达式

SpringBoot+Java 17@Valid未验证POJO

Spring data JPA/Hibernate根据id获取一个列值

使用用户引入的参数生成人员数组

Sack()步骤中的合并运算符未按预期工作

没有使用Lombok生成的参数

如果第一位数字和最后一位数字相差超过一位,您将如何获得随机数?

将双倍转换为百分比

为什么这种递归会有这样的行为?

在应用程序运行时更改LookAndFeel

未调用OnBackPressedCallback-Activitiy立即终止

使用同步方法中的新线程调用同步方法

按长度排序字符串数组

如何使JOOQ渐变脚本不重新创建表未更改的类?

如何用Micrometer&;斯普肯

为什么child-pom会创建一个新版本