我需要在以下字符串中获取特定文本:
“{client_unique_identifier = cdakLs1W7oI + M3z + CzFv1lEUkaY =,cldbid = 2086,client_nickname = sman}”
我需要的是将它们的昵称cldbid返回为“2086”作为int
答案 0 :(得分:1)
static int getNumber(){
int result = 0;
Pattern p = Pattern.compile("cldbid=(\\d+)");
Matcher m = p.matcher("client_unique_identifier=cdakLs1W7oI+M3z+CzFv1lEUkaY=, cldbid=2086, client_nickname=sman");
if(m.find()){
result = Integer.valueOf(m.group(1));
}
return result;
}
答案 1 :(得分:0)
假设数据始终采用您列出的格式。
//property = 'cldbid='
public int getUserProperty(String property, String data) {
int start = data.indexOf(property)+property.length();
int end = data.indexOf(',', start);
return Integer.parseInt(data.substring(start, end));
}
然而;我会把它作为正则表达式/模式匹配实现,就像之前的海报建议的那样。这里的教程。 http://docs.oracle.com/javase/tutorial/essential/regex/