Also mein Programm sieht bisher so aus:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
#!/usr/bin/perl -w
use CGI qw/:standard/;
use BioinfoPerlModul;
use GZip;
$pattern=param('pattern');
$dateipfad=param('dateiname');
$download=param('download');
$pattern_html=Zufallswert();
open FILE2,">../docs/Site/files/pattern_html/$pattern_html.htm";
print FILE2
"<html><head><title>Hits Of Pattern<\/title>
<meta http-equiv='Content-Type' content='text\/html; charset=iso-8859-1'>
<link href='main.css' rel='stylesheet' type='text/css'>
<\/head>
<style type='text\/css'>
<!--
.stil3 {
color:
background-color: #FF0000;
}
-->
<\/style>
<body>
<h1>Gefundene Sequenzen mit PATTERN:<\/h1><font size='3'>$pattern<\/font><p>
";
close(FILE2);
open FILE1, "$dateipfad" or die "Can't open $dateipfad!\n";
$Anzpattern=0;
$Anzseq=0;
$m=0;
$/=">";
#############################Aufruf Sub um Pattern für Perl zu definieren###############
$pattern_neu=pattern_design($pattern);
while (<FILE1>){
if (/(.*)\n([A-Za-z\n]+)/){
($header,$seq)=($1,$2);
$seq=~s/\s//g;
if ($i=$seq=~s/($pattern_neu)/<span class='stil3'>$1<\/span>/g){
$seq =~ s/([A-Z]{70})/$1<br>/sg;
open FILE2,">>../docs/Site/files/pattern_html/$pattern_html.htm";
print FILE2 "<font size='2'><strong>>$header<\/strong><\/font><br><font size='2'>$seq<\/font><p>";
close(FILE2);
$Anzseq=$Anzseq+1;
$Anzpattern+=$i;
print STDERR (length $seq)."\n";
}
}
}
close FILE1;
open FILE2,">>../docs/Site/files/pattern_html/$pattern_html.htm";
print FILE2"<p> <p><p><p>
$Anzpattern <span class='stil3'> PATTERN <\/span>in $Anzseq Sequenzen gefunden.<br><br>
<p><p><p>
<\/body>
<\/html>
";
close(FILE2);
if($download){
gzip_compress("../docs/Site/files/pattern_html/$pattern_html.htm");
print"
<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN'>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'>
<link href='main.css' rel='stylesheet' type='text/css'>
</head>
<body>
<p>Ihre Zufallsequenzen wurden erzeugt.<br>
Klicken Sie auf Download um die komprimierte HTML-DAteiherunterzuladen!</p>
<form name='form1' method='get' action='../Site/files/pattern_html/$pattern_html.htm.gz'>
<input type='submit' name='Submit' value='Download'>
</form>
<p> </p>
</body>
</html>";
}
else {
print " <html>
<head>
<title>Codeoperator</title>
<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'>
</head><script language=JavaScript>
function weiter()
{
location.href='http://127.0.0.1/Site/files/pattern_html/$pattern_html.htm';
}
</script>
<body onload=weiter()>
</body></html>";
}
Die Textdatei wird über ein HTML-Formular an das Programm per CGI geschickt. Der Pattern nach dem Gesucht werden soll wird ebenfalls über das Formular eingeben, sprich der string sieht je nach pattern immer anders aus.