我有一个这样的字符串:
EQ=ENABLED,QLPUB=50,EPRE=ENABLED
我怎么能忽略 QLPUB 的价值?实际上我想在 3000 行中检查这个字符串,但我想忽略 50。
有什么方法可以忽略它,例如使用 java 正则表达式或 %s 或 ...?
我有一个这样的字符串:
EQ=ENABLED,QLPUB=50,EPRE=ENABLED
我怎么能忽略 QLPUB 的价值?实际上我想在 3000 行中检查这个字符串,但我想忽略 50。
有什么方法可以忽略它,例如使用 java 正则表达式或 %s 或 ...?
如果 QLPUB 的值始终为数字,则可以使用以下正则表达式:
^EQ=ENABLED,QLPUB=\d*,EPRE=ENABLED$
这是一个例子:
String text = "EQ=ENABLED,QLPUB=502,EPRE=ENABLED";
String pattern = "^EQ=ENABLED,QLPUB=\\d*,EPRE=ENABLED$";
Pattern compiledPattern = Pattern.compile(pattern);
Matcher matcher = compiledPattern.matcher(text);
if(matcher.find()) {
System.out.println(matcher.group());
}
如果 QLPUB 的值不是,
将正则表达式更改为:
^EQ=ENABLED,QLPUB=[^,]*,EPRE=ENABLED$
你可以使用正则表达式/^EQ=ENABLED,QLPUB=\d+,EPRE=ENABLED$/
。在java中,这看起来像这样:
String myString = "EQ=ENABLED,QLPUB=50,EPRE=ENABLED";
if(myString.matches("^EQ=ENABLED,QLPUB=\\d+,EPRE=ENABLED$"))
{
//your string matches regardless of the value of QLPUB
}