JAVA新手牛刀小试之提取相同字符组成的子串
来源:互联网 发布:淘宝宝贝属性怎么设置 编辑:程序博客网 时间:2024/06/05 13:06
给定一个字符串和子串特征标记,要求从源字符串中提取特征标记代表的所有子串,如:
给定源字符串:AaaBbb,和子串特征标记ab,要求提取出符合特征标记的所有相同字符组成的子串aa和bb
JAVA代码如下:
import java.util.ArrayList;import java.util.Scanner;import static java.lang.System.*;import java.lang.String;public class FindSub{ public static void main(String[] args) { String src; String sublable; ArrayList<String> list=new ArrayList<String>(); out.println("Please input the source string"); Scanner input=new Scanner(System.in); src=input.nextLine(); out.println("please input the lable of substring"); sublable=input.nextLine(); list=getSub(src, sublable); out.println("All substring is:"); for(String s: list) { out.println(s); } } public static ArrayList<String> getSub(String src, String sublable) { int flag=0; int low=0, high=0; char sign='\u0000'; ArrayList<String> list=new ArrayList<String>(); for (int i=0; i<src.length(); i++) { if (sublable.contains(src.substring(i, i+1))) { if (flag==0) { low=i; high=i; flag=1; sign=src.charAt(i); } else { if (src.charAt(i)==sign) { high=i; } else { list.add(src.substring(low, high+1)); low=i; high=i; sign=src.charAt(i); } } } else { if (flag==1) { list.add(src.substring(low, high+1)); flag=0; } } } if (flag==1) list.add(src.substring(low, high+1)); return list; }}
该程序可以改进,在输出提取出的子串的同时打印子串在源字符串中的起止标号,这样可以区分相同特征标记的不同子串,如:
源字符串AaaBaa特征标记a
输出aa 1, 2
aa 5,6
懒得改了,有兴趣可以自己尝试
阅读全文
0 0
- JAVA新手牛刀小试之提取相同字符组成的子串
- Java 判断两个字符串是否由相同的字符组成
- java中如何提取多个字符串相同的字符
- 最大的相同字符子串
- 求字符串中由连续的相同字符组成的最长子串(如果有两个及两个以上的最长子串,则输出第二个)
- 提取数组中相同类别数据,组成新的数组
- Java RMI 之牛刀小试
- 如何判断一个字符串是否由相同的字符组成
- 判断两个字符串是否由相同的字符组成
- 判断两个字符串是否由相同的字符组成
- 如何判断两个字符串是否由相同的字符组成
- 判断两个字符串是否由相同的字符组成
- java之剔除字符串中其它相同的字符
- java-相同字符的遍历
- java 判断两个字符串是否由相同的字符组成 排序算法 空间换时间的方法
- 编程找出字符串的最长子串,要求子串的所有字符相同
- 找出字符串中的最长子串,要求子串的所有字符相同
- mmc提取子字符
- free()
- Codeforces 869C Round #439 Div2 C:排列组合计数
- 51Nod
- C++面试集锦( 面试被问到的问题 )
- Graph Theory NO.3 HDU_1325_Is It A Tree_并查集
- JAVA新手牛刀小试之提取相同字符组成的子串
- 前端代码重构
- 使用MyEclipse开发web工程常见问题
- JS之匿名函数
- 模板:Floyed
- Vue的axios跨域问题
- WPS参考文献自动生成方法
- PAT 甲级 1107. Social Clusters (30)
- 转载:PMBOK第六版重要变化说明