有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在带有分隔符的字符串中查找和删除子字符串(开始:55555,结束:\n)

我有这个字符串:

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Ut enim adminim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat 55555 Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.

Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

在这个字符串中,有三个段落,我需要找到这个子字符串:"55555"并从那里删除到下一个换行符(行尾)。你怎么能这么做


共 (3) 个答案

  1. # 1 楼答案

    您可以选择整个字符串所需的部分,并按\n将其拆分。然后更改需要更正的段落

    String[] strings = string.split("\n");
    strings[1] = strings[1].substring(0, strings[1].indexOf("55555"));
    
  2. # 2 楼答案

    我做了一个程序,希望能解决你的问题。请注意,程序采用多行输入,因此必须输入逗号()以结束输入。它首先将主字符串作为输入,然后请求从中删除该单词。这是一个简单的程序:不使用substring()函数或其他您不熟悉的技术

    class ProgramTest{
    
        public static void main(String[] args){
    
            java.util.Scanner sc=new java.util.Scanner(System.in);
            String str1="", str2="", a="", w="", mystr="";
    
            System.out.println("Enter your string. Enter ',' to terminate input.");
    
            while(!(a=sc.nextLine()).equals(","))
                str1 += a+"\n";
    
            System.out.println("Enter word to remove");
    
            str2 = sc.nextLine();
    
            for(int i=0;i<str1.length();i++){
                if(str1.charAt(i)!=' '){
                    w+=str1.charAt(i);
                }
                else{
                    if(!(w.equals(str2)))
                    mystr += w+" ";
                    w="";
                }
            }
            System.out.println("String after removing "+str2+" is \n"+mystr);
        }
    }
    
  3. # 3 楼答案

    这是我的解决方案:

    String strings = string.substring(string.indexOf("55555"), string.indexOf("\n"));