加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

将java中的字符串拆分为固定长度的块

发布时间:2020-12-15 02:03:03 所属栏目:Java 来源:网络整理
导读:我在一个名为string1到string7的程序中有七个字符串. 每个字符串的大小为30个字符. 我将得到一个未知长度的输入字符串. 我必须将此输入字符串拆分为30个字符串,然后将第一个子字符串设置为string1,将第二个字符串设置为string2,依此类推,直到可能为止.如果输
我在一个名为string1到string7的程序中有七个字符串.

每个字符串的大小为30个字符.

我将得到一个未知长度的输入字符串.

我必须将此输入字符串拆分为30个字符串,然后将第一个子字符串设置为string1,将第二个字符串设置为string2,依此类推,直到可能为止.如果输入字符串大于210个字符,则结尾处的剩余字符串将被忽略.

当输入字符串的大小小于210 char时,如何处理这种情况.

对于例如145在这种情况下,string1到string4将是full,而string5将由剩余的15个char组成.

怎么处理这个很好?

我可以通过char读取char并将前30个char和string1,next2等接下来直到所有char消耗完为止.

但是有更好的方法吗?

解决方法

由于您的字符串不在数组或列表中,因此您需要明确地分配它们.

Matcher m = Pattern.compile(".{1,30}").matcher(s);
    String s1 = m.find() ? s.substring(m.start(),m.end()) : "";
    String s2 = m.find() ? s.substring(m.start(),m.end()) : "";
    String s3 = m.find() ? s.substring(m.start(),m.end()) : "";
    String s4 = m.find() ? s.substring(m.start(),m.end()) : "";
    String s5 = m.find() ? s.substring(m.start(),m.end()) : "";
    String s6 = m.find() ? s.substring(m.start(),m.end()) : "";
    String s7 = m.find() ? s.substring(m.start(),m.end()) : "";

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读