Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我有一个字符串,我需要从中提取一些值,并将该值放入java中的另一个字符串中_Java_Spring Boot - Fatal编程技术网

我有一个字符串,我需要从中提取一些值,并将该值放入java中的另一个字符串中

我有一个字符串,我需要从中提取一些值,并将该值放入java中的另一个字符串中,java,spring-boot,Java,Spring Boot,我需要从字符串中提取业余爱好的值,即板球,知道怎么做吗 String str = "welcome to stackoverflow : person_name : abc hobby : cricket Class : xyz " 我知道子字符串的概念,但知道如何设置索引值。请提前感谢。因为您的字符串总是采用相同的格式。我们需要通过String.indexOf(

我需要从字符串中提取业余爱好的值,即板球,知道怎么做吗

  String str = "welcome to stackoverflow :
                  person_name : abc
                  hobby : cricket
                  Class : xyz "

我知道子字符串的概念,但知道如何设置索引值。请提前感谢。

因为您的字符串总是采用相同的格式。我们需要通过
String.indexOf(String)
找到
hobby
Class
的索引:

String findHobbyInString(String str){
int idxBegin=str.indexOf(“爱好:”);
if(idxBegin<0){
返回null;
}
int idxEnd=str.indexOf(“类:”);
if(idxEnd<0){
返回str.substring(idxBegin+8).trim();
}
返回str.substring(idxBegin+8,idxEnd).trim();
}

还有,因为有太多的空白,我使用
trim()
来删除它。

还有
String.indexOf
你能用代码来说明我想要的输出吗。你也可以在代码的帮助下使用正则表达式explain
String findHobbyInString(String str) {
int idxBegin = str.indexOf("hobby : ");
if (idxBegin < 0) {
  return null;
}
int idxEnd = str.indexOf("Class : ");
if (idxEnd < 0) {
  return str.substring(idxBegin + 8).trim();
}
return str.substring(idxBegin + 8, idxEnd).trim();
}