簡體   English   中英

如何從多行字符串中刪除特定行

[英]How to remove specific line from multi-line string

我有以下 java 字符串作為命令輸出

String output = "NIC     Value\n"
                + "------  -----\n"
                + "vmn0  on   \n"
                + "vmn1  on   \n"
                + "vmn2  on   \n"
                + "vmn3  on   \n"
                + "vmn4  on";

我想從上面的字符串中刪除帶有破折號的第二行。 我該怎么做?

我嘗試使用 contains 方法,但它在刪除第二行后生成空行。

 if(output!=null && output.contains("-"))
            output = output.replace("-","");

這是您正在尋找的完整答案:

String output = "NIC     Value\n"
            + "------  -----\n"
            + "vmn0  on   \n"
            + "vmn1  on   \n"
            + "vmn2  on   \n"
            + "vmn3  on   \n"
            + "vmn4  on";

    String str = Stream.of(output.split("\n"))
                       .filter(s -> !s.contains("--"))
                       .collect(Collectors.joining("\n"));

您可以使用它來刪除該行並使用結​​果,

String result = output.replace("------  -----\n", "");

它將用空String替換該行

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM