java截取指定步长的字符串怎么做?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java截取指定步长的字符串怎么做?相关的知识,希望对你有一定的参考价值。

例如s=abcddbfghtju,我想要从左边每3个截取出来存入一个字符串数组abc,ddb,fgh,tju,怎么做。。有时候s的长度不确定,但都是3的整数倍

public class Util 
public static void main(String[] args) 
String str = "abcddbfghtju";
String[] arr = new String[str.length() / 3];
int num = 0;
for(int i = 0; i < arr.length; i++)
arr[i] = str.substring(num, num+3);
num = num + 3;

System.out.println(java.util.Arrays.toString(arr));

 //试试我的方法吧,挺好使的。。。。

//如果数据比较多,那就改成大Long类型。。

参考技术A

按照你的要求编写的Java程序如下:

import java.util.regex.Matcher;

import java.util.regex.Pattern;

public class LL 

 public static void main(String[] args) 

  String s="abcddbfghtju";

  String regex="(
\\\\w3
)";

  Pattern p=Pattern.compile(regex);

  Matcher m=p.matcher(s);

  String a[]=new String[s.length()/3];

  int i=0;

  while(m.find())

   a[i]=m.group(1);

   i++;

  

  for(int j=0;j<a.length;j++)

   System.out.println(a[j]);

  

 

运行结果:

abc
ddb
fgh
tju

参考技术B String str = "abcddbfghtju";

for(int i =0;i<str.length;i++)
//这边还要判断下执行的事3的整数倍

str.substring(i); //放入数组





因为我在上班 所以大致给你讲个思路啊
参考技术C 定义一个数组a[]
用for循环
string b=string.empty;
for(int i=0;i<s.length;i++)

b=s.substring(i * 3 ,3);
a.add(b);
参考技术D public static void main(String[] args) 
  
  String str = "abcddbfghtju";//字符串
  String zu = "";//存放修改后的字符串
  for (int i = 0; i < str.length();) 
   String a = str.substring(i, i + 3);
   //System.out.println(a);
   zu+=","+a;//修改后的字符串
   i += 3;
  
  String[] b = zu.split(",");//化为数组形式
  for(int i=1;i<b.length;i++)//i从1开始,去掉b[0]所对应的空值即可。
  System.out.println(b[i]);//输出结果
 

运行结果如下:

abc
ddb
fgh
tju

第5个回答  2013-05-24 public class test

public static void main(String[]args)
String s= "abcddbfghtju";
//s的长度为3的倍数,那数组的长度也可以确定为s长度的三分之一
String arr[] = new String[s.length()/3];
for (int i = 0; i < arr.length; i++)
arr[i] = s.substring(i*3,(i+1)*3);

for (int i = 0; i < arr.length; i++)
System.out.println(arr[i]);


java怎么截取指定字符之后的字符串

可以通过java的”substring“方法截取出对应的字符串,前提是知道开始和结束的字符串的值。

用substring(int start,int end);

程序如下:

public class 截取字符串

public static void main(String[] args)

String str = "http://deyu.qxntc.edu.cn/music/6.mp3";//自定义字符串

str = str.substring(str.length()-3,str.length());//截取后三位

System.out.println(str);//输出

参考技术A String str = "房估字(2014)第YPQD0006号";
String jieguo = str.substring(str.indexOf("第")+1,str.indexOf("号"));本回答被提问者采纳
参考技术B indexOf 找出指定字符第一次出现的索引。再用substring截取

以上是关于java截取指定步长的字符串怎么做?的主要内容,如果未能解决你的问题,请参考以下文章

pandas截取字符串固定长度

java 如果截取的字符串不是数字怎么判断

字符串中怎么截取指定字符的前面的字符和后面的字符

怎么用JS截取指定的字符后面的部分,包括这个字符本身!

java 获取指定截取字符串

java的subString,可以截取指定字符到该行的末尾吗?