Java 从字符串中删除停止字 class-MyClass{ 公共静态void remove_stopwords(字符串[]查询,字符串[]stopwords){ A:for(int i=0;i

Java 从字符串中删除停止字 class-MyClass{ 公共静态void remove_stopwords(字符串[]查询,字符串[]stopwords){ A:for(int i=0;i,java,words,Java,Words,出于某种原因,此代码只能在问题解决一半左右正常工作。它从查询中取出第一个停止字,但忽略其余的。任何帮助都将不胜感激 class-MyClass class MyClass { public static void remove_stopwords(String[] query, String[] stopwords) { A: for (int i = 0; i < query.length; i++) { B: for (int j = 0; j < sto

出于某种原因,此代码只能在问题解决一半左右正常工作。它从查询中取出第一个停止字,但忽略其余的。任何帮助都将不胜感激

class-MyClass
class MyClass {
public static void remove_stopwords(String[] query, String[] stopwords) {
    A: for (int i = 0; i < query.length; i++) {
        B: for (int j = 0; j < stopwords.length; j++) {
             C: if (query[i].equals(stopwords[j])) { 
                    break B;
                } 
                else {
                    System.out.println(query[i]);
                    break B;
                }
            }
        } 
    }
}
{ 公共静态void remove_stopwords(字符串[]查询,字符串[]stopwords){ A:for(int i=0;i
class MyClass
{
公共静态void remove_stopwords(字符串[]查询,字符串[]stopwords){
A:for(int i=0;i
我尝试在arraylist中添加停止字,并尝试与stringarray进行比较,以便在找到任何停止字时将其删除。但是我在我的循环中发现了一些问题

 class MyClass 
 {
    public static void remove_stopwords(String[] query, String[] stopwords) {

        A: for (int i = 0; i < query.length; i++) {
            //iterate through all stopwords
            B: for (int j = 0; j < stopwords.length; j++) {
                    //if stopwords found break
                    C: if (query[i].equals(stopwords[j])) { 
                        break B;
                    } 
                    else { 
                        // if this is the last stopword print it
                        // it means query[i] does not equals with all stopwords
                        if(j==stopwords.length-1)
                        {
                           System.out.println(query[i]);
                        }
                    }
                }
            } 
        }
    }
publicstaticvoidmain(字符串[]args){
ArrayList stopWords=新的ArrayList();
停止语。添加(“该”);
停止语。添加(“at”);
String语句=“我不太擅长编码”;
String[]SentSplit=句子。拆分(“”);
系统输出打印长度(SentSplit.length);
StringBuffer FinalContent=新的StringBuffer();
布尔b=假;

对于(int i=0;i我尝试在arraylist中添加停止字,并尝试与stringarray进行比较,以便在找到任何停止字时删除。但我发现我的循环中存在一些问题

 class MyClass 
 {
    public static void remove_stopwords(String[] query, String[] stopwords) {

        A: for (int i = 0; i < query.length; i++) {
            //iterate through all stopwords
            B: for (int j = 0; j < stopwords.length; j++) {
                    //if stopwords found break
                    C: if (query[i].equals(stopwords[j])) { 
                        break B;
                    } 
                    else { 
                        // if this is the last stopword print it
                        // it means query[i] does not equals with all stopwords
                        if(j==stopwords.length-1)
                        {
                           System.out.println(query[i]);
                        }
                    }
                }
            } 
        }
    }
publicstaticvoidmain(字符串[]args){
ArrayList stopWords=新的ArrayList();
停止语。添加(“该”);
停止语。添加(“at”);
String语句=“我不太擅长编码”;
String[]SentSplit=句子。拆分(“”);
系统输出打印长度(SentSplit.length);
StringBuffer FinalContent=新的StringBuffer();
布尔b=假;

例如(int i=0;i为我们提供一个查询、停止词和期望结果查询的示例:[“do”、“not”、“drop”、“the”、“soap”]stopwords:[“do”、“the”]期望输出:不删除soap我的输出:不删除soap提供一个查询、停止词和期望结果查询的示例:[“do”、“not”、“drop”、“the”、“soap”]stopwords:[“do”、“the”]期望的输出:不删除soap我的输出:不删除soap事实上,我在过去一个小时左右一直在处理这个问题。删除break语句会给我以下输出:不删除soap soap我在过去一个小时左右一直在处理这个问题。删除break语句会给我以下输出:不要滴肥皂