Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/323.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 从给定字符串中查找字符串=";日期:2017年1月1日;_Java_String - Fatal编程技术网

Java 从给定字符串中查找字符串=";日期:2017年1月1日;

Java 从给定字符串中查找字符串=";日期:2017年1月1日;,java,string,Java,String,我有密码: String str="Date-01-2017" 如何仅从该字符串打印2017 我不知道如何分割并获得2017年的回报。您可以尝试: String[] splitString = dateString.split("-"); String year = splitString[2]; 您可以使用substring方法获取所需的字符串部分: String data = "Date-01-2017"; String year = data.substring(data.length

我有密码:

String str="Date-01-2017"
如何仅从该字符串打印2017

我不知道如何分割并获得2017年的回报。

您可以尝试:

String[] splitString = dateString.split("-");
String year = splitString[2];

您可以使用
substring
方法获取所需的字符串部分:

String data = "Date-01-2017";
String year = data.substring(data.length() - 4, data.length());

您可以使用正则表达式:

Pattern pattern = Pattern.compile("\\w+-(?<month>\\d{2})-(?<year>\\d{4})");
Matcher matcher = pattern.matcher("Date-01-2017");

if(matcher.matches())
    System.out.println(matcher.group("year"));
else
    System.out.println("NOT MATCH!!!");
Pattern=Pattern.compile(\\w+-(?\\d{2})-(?\\d{4})”;
匹配器匹配器=模式匹配器(“日期-2017-01”);
if(matcher.matches())
系统输出打印LN(匹配器组(“年”);
其他的
System.out.println(“不匹配!!!”;

如果字符串“2017”正在使用以下函数,则另一种打印方法

public boolean contains(CharSequence s) {
        return indexOf(s.toString()) > -1;
    }

您可以使用字符串作为参数调用此函数,如果字符串包含2017,则可以打印出该字符串。

按破折号拆分(
-
),然后获取数组的第三个元素,如下所示:
str.Split(“-”[2]
string year=splitString[splitString.Length-1]为最后一次拆分,以防您的日期为2017年1月1日。感谢大家的精彩。响应非常感谢您以最简单的方式展示。我认为OP希望打印字符串“2017”,而不是字符串是否包含它。