Java 在拆分操作的字符串数组中搜索特定字符串

Java 在拆分操作的字符串数组中搜索特定字符串,java,Java,我有一根绳子 str = "Abc=1,gdf=1,ghj=1,pqr=1" 现在,我要将pqr=1的值增加到pqr2,每当prq出现时,它都会将值增加1。所以我决定先在每个“,”处吐出这个字符串,这样子字符串数组的一部分将包含pqr=1,然后我可以执行递增操作 代码如下 String [] parts=str.split("="); 这给出了包含索引3处的pqr的字符串部分,但并非每次pqr都在索引3处都是必需的,所以我想将其设置为泛型。为此,我正努力做到以下几点: if(Arrays.

我有一根绳子

str = "Abc=1,gdf=1,ghj=1,pqr=1"
现在,我要将pqr=1的值增加到pqr2,每当prq出现时,它都会将值增加1。所以我决定先在每个“,”处吐出这个字符串,这样子字符串数组的一部分将包含pqr=1,然后我可以执行递增操作

代码如下

String []  parts=str.split("=");
这给出了包含索引3处的pqr的字符串部分,但并非每次pqr都在索引3处都是必需的,所以我想将其设置为泛型。为此,我正努力做到以下几点:

if(Arrays. asList(parts). contains("pqr") {
    // Do my other split operation 
} 

但是我不能通过这个让它变得通用。我并没有得到任何错误,但代码并没有进入if语句。请建议怎么做

首先,不建议为此使用
String
。我认为您需要的是一个
HashMap

此外,您可以简单地迭代第一个数组,并在每个
字符串中签入
子字符串
pqr

str = "Abc=1,gdf=1,ghj=1,pqr=1";
String[] arr = str.split(",");
for(String member: arr) {
    if(member.contains("pqr")) {
        //Do your operation here
    }
}

这就是你要找的吗?我正在尽我所能使用提供的代码

    public class Splitter {

    public static void main(String[] args) {

        String str = "Abc=1,gdf=1,ghj=1,pqr=1";

        String[] strSplit = str.split(",");

        int commaSplitCount = strSplit.length;

        for (int s = 0; s < commaSplitCount; s++) {

            String[] sSplit = strSplit[s].split("=");

            int equalsSplitCount = sSplit.length;

            if (equalsSplitCount > 0) {

                for (int sParts = 0; sParts < equalsSplitCount; sParts++) {
                    if (sParts == 0) {
                        if (sSplit[sParts].contains("pqr")) {

                            System.out.println("do something >> " + sSplit[sParts]);

                        } else {
                            System.out.println("do something else >> " + sSplit[sParts]);
                        }
                    }
                }
            }

        }

    }

}

无论你想对pqr做什么,你都可以在sout做一些事情。

看看番石榴
MapSplitter
,看看条件是否符合i。e成员包含pqr,那么我如何将该部分作为字符串获取,以便我可以执行进一步的操作
成员将是“字符串的该部分”。如果条件与I匹配,您可以简单地中断循环并将其取出(我假设在
字符串中只出现一次
pqr
)。e成员包含pqr,那么我如何才能将该部分作为字符串获取,以便我可以执行进一步的操作在我的示例中,当您进入嵌套的for循环时,变量名为“sSplit[0]”,该变量的值为“sSplit[1]”。迭代器在包含“pqr”的区域中是“sParts”,您可以使用Integer.parseInt(sSplit[sParts+1])。然后你可以做任何你想做的事,你知道了吗?希望你一切顺利。
do something else >> Abc
do something else >> gdf
do something else >> ghj
do something >> pqr