有没有办法在Java中的一定数量的字符之后拆分字符串?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有没有办法在Java中的一定数量的字符之后拆分字符串?相关的知识,希望对你有一定的参考价值。

假设我有一个字符串“yyyymmddword”,是否有一种方法可以使用基于该字符串的int年,月,日和字符串字。所以,如果我有一个字符串“20070405word”,我需要将其转换为:

String name = "yyyymmddword";
int year = 2007;
int day = 04;
int month = 05;
String word = "word";

如何编写一个方法,允许我拆分该字符串而无需手动分配这些变量?

答案

纯粹脱离角色String.substring()的索引是完全合适的。

public static void main(String args[]) {
    String s = "yyyymmddword";

    System.out.println(s.substring(0,4));
    System.out.println(s.substring(4,6));
    System.out.println(s.substring(6,8));
    System.out.println(s.substring(8));        
}

输出:

yyyy
mm
dd
word
另一答案

试试这个:

String name = "yyyymmddword";
int year = Integer.parseInt(name.substring(0, 4));
int day = Integer.parseInt(name.substring(4, 6));
int month = Integer.parseInt(name.substring(6, 8));
String year = Integer.parseInt(name.substring(8));
另一答案

就在这里。您需要做的就是创建更多字符串,然后使用substring()方法。按照下面的例子。

    String word = "TestString";
    String new1 = word.substring(0,4); 
    /*substring() goes from the first specified index, up to, but not including
    * the second.
    */
    String new2 = word.substring(4,word.length() + 1);
    System.out.println(word + "
" + new1 + "
" + new2);

以上是关于有没有办法在Java中的一定数量的字符之后拆分字符串?的主要内容,如果未能解决你的问题,请参考以下文章

如果句子有一定数量的字符,则拆分句子

我可以在我想要的字符串之前或之后 grep 一定数量的行吗? [复制]

有没有办法拆分数组中的每个字符串并每次检索第 5 位,加到总数中?

使用 Oracle SQL 将可变长度分隔字符串拆分为列

按一定数量将行拆分为列

有没有办法在bash中的特定子字符串之后提取子字符串?