【发布时间】:2014-01-20 18:03:13
【问题描述】:
我需要计算输入链中指定模式的出现次数,并为每个模式生成一份报告。 输入字符串将包含 1 个 AA AATTCGAA 结尾 1 表示要搜索的一个模式,AA 是模式,下一个是您要搜索 AA 的部分。
My idea is to :
public static void main(String[] args){
Scanner s = new Scanner(System.in);
System.out.println("How many patterns do you want and enter patterns and DNA Sequence(type 'end' to signify end):");
String DNA = s.nextLine();
process(DNA);
}
public static void process(String DNA){
String number = DNA.replaceFirst(".*?(\\d+).*", "$1");
int N = Integer.parseInt(number);
DNA.toUpperCase();
String[] DNAarray;
DNAarray = DNA.split(" ");
for(int i=1; i<N; i++){
int count=0;
for(int j =0; j < DNAarray.length; j++) {
if(DNAarray[i+N].contains(DNAarray[i])){
count= count++;
}
}
System.out.println("Pattern:"+DNAarray[i]+ "Count:"+count);
}
【问题讨论】:
-
那么你的问题是什么?什么不工作?有什么问题?
-
我的问题主要是关于如何在具有多种模式的 AATTCGAA 中找到 AA。进程(DNA)没有搜索被分裂的DNAarray。
-
我不明白你的前提。您是说必须解析 INPUT 字符串以获得模式数量、模式本身和对象子字符串?如果是这样,那么给出一个包含 2 个模式的示例字符串,因为 1 没有显示如何解析这些模式。
-
给定您的示例输入格式,“1 AA AAAA”应该给出 2(对于 [AA]AA 和 AA[AA])或 3(对于 [AA]AA,A[AA] ]A 和 AA[AA])?
-
如果是 [AA]AA、A[AA]A 和 AA[AA],则应该产生 3 个计数)。
标签: regex loops for-loop find match