APAKAH PERL ITU ?
Perl
merupakan singkatan dari Practical Extraction and Report Language
yang dibuat oleh Larry Wall. Perl
adalah bahasa interpreter sekaligus kompiler (mirip dengan java).
Artinya perl akan mendeteksi
setiap baris untuk mencari syntax
error sebelum program dijalankan.
Mungkin anda sebelumnya pernah membuat program menggunakan shell script. Berbeda dengan shell script, Perl sangat fleksibel untuk digunakan sehingga kita bisa membentuknya sedemikian rupa sesuai dengan
Mungkin anda sebelumnya pernah membuat program menggunakan shell script. Berbeda dengan shell script, Perl sangat fleksibel untuk digunakan sehingga kita bisa membentuknya sedemikian rupa sesuai dengan
selera kita. Perl banyak
digunakan untuk pengembangan homepage dengan dipadukan bersma CGI.
Beberapa software yang
dikembangkan di internet menggunakan
perl sebagai bahasa intinya, misalnya software pemantau traffic
internet MRTG.
Perl
juga mirip dengan bahasa C sehingga prgrammer C pun dapat mempelajari
Perl dengan cepat dan mudah. Salah
satu contoh kemiripan C dengan Perl adalah adanya tanda titik koma atau
semiclon ";" pada
akhir suatu perintah. Kelebihan yang
lain adalah bahwa bahasa Perl dapat menangani string dan ekspresi
dengan baik
Perl sendiri merupakan program yang dibuat khusus untuk UNIX. Namun demikian bagi para pengguna windows 95 dan windows NT masih dapat menggunakan Perl for win32 yang disebut sebagai activePerl (sesuai dengan nama alamat web penyedia Perl for Win32 tersebut. Active Perl dibuat setelah Perl Versi 5 for Unix diedarkan.
MENGAPA PERLU PERL ?
Sistem operasi yang didukung
Perl sendiri merupakan program yang dibuat khusus untuk UNIX. Namun demikian bagi para pengguna windows 95 dan windows NT masih dapat menggunakan Perl for win32 yang disebut sebagai activePerl (sesuai dengan nama alamat web penyedia Perl for Win32 tersebut. Active Perl dibuat setelah Perl Versi 5 for Unix diedarkan.
MENGAPA PERLU PERL ?
Sistem operasi yang didukung
- Perl berawal dari Unix systems sebagai perangkat system administration.
- Perl bekerja pada mesin Macintosh - lihat The MacPerl Pages dan
- Perl juga bekerja di mesin berbasis Microsoft - lihat ActiveState Tools Corp.
- Perl mengambil fitur-fitur terbaik dari bahasa pemrograman lain, seperti C, awk, sed, sh, dan BASIC.
- Perl juga berjalan dengan database third-party seperti Oracle, Sybase, Postgres, dan yang lainnya melalui antarmuka database abstrak yang disebut DBI.
- Perl dapat bekerja dengan HTML, XML, dan mark-up languages lainnya.
- Perl mempunyai dukungan Unicode.
- Perl adalah dan akan selalu Y2K compliant.
- Perl mendukung procedural maupun object-oriented programming.
- Perl dapat berantarmuka dengan library-library C/C++ eksternal melalui XS atau SWIG.
- Akan mendukung development Java-Perl Lingo (JPL) ...
- Perl didevelop oleh perl5porters, atau p5p for short. Perl 5 sangat extensible dan punya lebih dari 400 modul third party yang tersedia di Comprehensive Perl Archive Network (CPAN).
- perl (the interpreter of Perl) dapat di embed ke dalam system lain.
- Perl adalah bahasa pemrograman web yang paling populer karena fasilitas dengan manipulasi text dan siklus development yang cepat.
- Perl dijuluki "the duct-tape of the internet".
- Modul CGI.pm Perl membuat HTML form handling jadi jauh lebih mudah.
- CGI.pm merupakan bagian distribusi standard Perl.
- Perl mampu menangani transaksi Web terenkripsi, termasuk untuk tujuan e-commerce.
- Perusahaan raksasa seperti Amazon.com dan Deja.com menggunakan Perl untuk situs mereka.
- Perl dapat diembed dalam web server untuk mempercepat prosesing hingga 2000%. Lihat http://perl.apache.org.
- Apache web server dapat menggunakan mod_perl untuk meng-embed Perl interpreter
- Netscape web server dapat menggunakan nsapi_perl untuk meng-embed Perl interpreter
- Dengan menggunakan paket DBI Perl, integrasi web-database menjadi mudah.
- The Perl Journal memperkirakan ada lebih dari 1,000,000 pengguna Perl
- Programming Perl telah diterjemahkan dalam X languages
Sejarah Perl
- Untuk lebih detilnya, lihatlah Perl Timeline
- Perl diciptakan oleh Larry Wall
- Perl 1.0 dirilis di usenet's alt.comp.sources pada tahun 1987
- Perl 5 dirilis pada tahun 1994.
- Versi mutakhir maintenance version dari Perl adalah 5.005_03
- Versi mutakhir experimental version dari Perl adalah 5.005_58
- Manager versi mutakhir maintenance release untuk Perl 5.004 adalah Chip Salzenberg chip@perl.org.
- Manager versi mutakhir maintenance release untuk Perl 5.005 adalah Chip Salzenberg chip@perl.org.
- Manager versi mutakhir experimental release untuk Perl 5.005 adalah Gurusamy Sarathy gsar@activestate.com.
MENJALANKAN PERL
Cara yang paling mudah menjalankan program perl adalah dengan memanggil perl interpreter dan nama program sebagai argumennya
perl contoh.pl
Nama
program atau file perlnya adalah contoh.pl dan perl adalah nama
interpreternya. Tentu saja
pemanggilan program perl di atas berasumsi bahwa path perl sudah
dikenal, jika tidak maka kita
perlu memanggil dengan full path
sebagai berikut:
/usr/local/bin/per contoh.pl
Nah jika anda menggunakan windows 98 atau windows NT, anda dapat memanggilnya
dengan cara yang hampir sama, yaitu:
C:\ Ntperl\perl contoh.pl
Tentu
saja pemanggilan dengan cara di atas agak merepotkan. Untuk itu
kita dapat menyederhanakan
pemanggilannya dengan tanpa mencantumkan nama interpreter perl, jadi
cukup nama file perl-nya saja
contoh.pl
Ada beberapa hal yang harus dilakukan pada sistem Unix, yaitu:
1. Menambahkan full path dari lokasi interpreter perl dibaris pertama pada file program
perl sebagai berikut:
#!/usr/local/bin/perl
# Nama Program:hello.pl
print "Hello World\n";
- Agar file program perl dapat langsung dieksekusi, maka perlu diubah mode filenya sebagai mode file eksekusi pada sistem UNIX, yaitu
Chmod +x contoh.pl
Pada
sistem Windows, untuk menjadikan program perl langsung dapat
dieksekusi,
dapat dilakukan dengan membuat
asosiasi antara file yang berkstensi .pl dan program perl. Jadi setiap
file berakhiran .pl
akan diekseusi oleh program perl,
tepatnya active perlMEMBUAT PERL SCRIPT : HELLO WORLD
Perl script merupakan file text yang terdiri dari kumpulan perintah-perintah perl. Berikut ini beberapa ketentuan umum yang perlu diperhatikan:
1. Spasi kosong di awal baris akan diabaikan
- Perintah perl diakhiri dengan semicolon atau tanda titik koma ";"
- Tanda pagar atau "#" akan diartikan sebagai komentar dimana perintah dibelakangnya akan diabaikan
- Pada sistem Unix, baris pertama dicantumkan lokasi program perl, misalnya #!/usr/local/bin/perl
#!/usr/local/bin/perl
# Nama Program:hello.pl
print "Hello World\n";
mari lakukan langkah-langkah berikut:
$ perl hello.pl
Hello world
Atau
$ chmod +x hello.pl
$ hello.pl
Hello world
$
TIPE DATAAda beberapa jenis tipe data utama, yaitu:
·
scalar
- Array
- Assosiatif array (array lanjutan)
Data scalar dapat didefinisikan sebagai suatu data yang dapat dimanipulasi oleh perl, dapat berupa :
·
angka numerik
- karakter atau string,
Contoh nama variabel yang benar:
$contoh
$bolehpanjanglho
$nama_variabel_scalar_yang_benar
contoh nama variabel yang salah
$ contoh
$nama variabel scalar yang salah
perlu
diingat bahwa penggunaan huruf dalam penulisan variabel scalar
sangat sensitif terhadap perbedaan
huruf besar dan kecil. Maka jika Anda membuat variabel skalar $jumlah,
maka anda tidak
bisa memanggilnya dengan variabel
scalalr $JUMLAHpenggunaan operator dalam memanipulasi variabel scalar sangat fleksibel. Perhatikan contoh kasus berikut:
$a = 2;
$b = 6;
$c = $a . $b; # The "." operator penggabungan 26
#menjadi karakter
$d = $c / 2;
print $d;
hasilnya adalah:
13Pada penggunaan karakter terdapat beberapa hal yang perlu diperhatikan
·
single quoted atau kutip tunggal
- double quoted atau kutip ganda
perhatikan contoh berikut ini:
#!/usr/local/bin/perl –w
$who = 'Yon Yonson';
$where = 'Wisconsin';
$what = 'in a lumbermill';
print "My name is $who,\n";
# Let's introduce ourselves
print "I live in $where,\n",
"I work $what there.\n";
# Remember the line breaks
print "\nSigned: \t$who,\n\t\t$where.\n";hasilnya adalah:
My
name is Yon Yonson,
I live in Wisconsin,
I work in a lumbermill there.
Signed: Yon Yonson,
WisconsinVariabel khusus pada karakter antara lain:
karakter hasil cetakan
\b backspace
\c baris tanpa diakhiri newline
\f formfeed
\n newline
\r Carriage return
\t karakter tab
\\ karakter garis miring terbalik
\nnn karakter yang memiliki nilai ASCII nnn,
dimana nn adalah 1 s/d 3 dijit bilangan oktaloperator yang dipakai oleh numerik dan karakter:
Nama | angka | karakter |
Equal | == | eq |
Not equal | 1= | ne |
Less than | < | lt |
Greater than | > | gt |
Less than or equal to | <= | le |
Grater than or equal to | >= | ge |
Array
Array adalah suatu bentuk kumpulan atau daftar dari data scalar. Setiap data scalar yang dimasukkan dalam data ini adalah data yang memiliki nilai terendah beranjak menuju nilai yang lebih tinggi
Ada beberapa cara penaganan list dari data scalar yang dimasukkan , dapat berupa titik maupun koma
Salah satu bentuk metode yang paling umum untuk memasukkan beberapa data scalar ke dalam data array adalah dengan memisahkan satu data dengan data lainnya menggunakan tanda koma",". Perhatikan contoh berikut:
(10,20,30) array yang berisi 3 nilai yaitu
10,20,30
(a, b, c, d) array yang berisi 4 nilai yaitu
a,b,c,d
("satu", 2, "ibu") array yang berisi 3 nilai
yaitu "satu", 2 dan "ibu"
metode
lain untuk memasukkan suatu data array adalah dengan menggunakan
tanda titik dua "..". Tanda ini
digunakan untuk memasukkan data scalaar yang banyak jumlahnya namun
berurutan dengan maksud
menghemat penulisan. Perhatikan
contoh berikut:
(10..15) array yang berisi nilai 10, 11,12,13,14,15
(a..d) array yang berisi nilai a,b,c,d
Dalam bahasa pemrograman perl, variabel array dinyatakan dengan menggunakan
tanda "@" di depan nama variabelnya. Contoh:@trees =
("Larch", "Hazel", "Oak");
@nomor = (1,2,3);
@campur = (12,3,"cinta",100, "virus");Nah selanjutnya untuk menyatakan nilai ke satu, ke dua dan seterusnya, dapat digunakan kurung siku berikut"[]". Perlu dicatat, elemen ke satu dari array tersebut adalah 0. Jadi dalam kasus @trees diatas, maka elemen ke satu alias @trees[1]adalah "Hazel". Untuk lebih jelasnya, perhatikan contoh berikut:
@items = (15, 45.67, "case");
print "Take $items[0] $items[2]s
at \$$items[1] each.\n";
hasilnya adalah:
Take 15 cases at $45.67 each.Penggunaan Array bersifat dinamis, perhatikan contoh berikut ini:
@A = (1, 2, 3);
@B = (4, 5, 6);
@C = (7, 8, 9);
@D = (@A, @B, @C);
print "aku adalah $D[0] $D[3] $D[6] \n";
hasilnya adalah:
aku adalah 1 4 7Array Assosiatif
Array asosiatif merupakan pengembangan dari bentuk array yang lain, dimana definisinya dapat disederhanakan sebagai array yang indexing dari nilainya menggunakan string dan bukan bilangan – biasa disebut keys. Perhatikan contoh berikut:
print $fruit{"Yellow"};
hasilnya:
Banana
Yang
membedakan dengan array sebelumnya adalah tanda % sebagai tanda
dari array asosiatif, dimana di
dalam array terdapat pasangan key dan pasangan nilainya. Jadi nilai
apple memiliki key green,
nilai orange memiliki ket orange dan nilai banana memiliki key yellow. Lumayan bingung ? bayangkan array asosiatif ini sebagai suatu relasional database.
Perhatikan contoh berikut ini:%Folk = ( 'YY', 'Yon Yonson',
'TC', 'Terra Cotta',
'RE', 'Ron Everly' );
%State = ( 'YY', 'Wisconsin',
'TC', 'Minnesota',
'RE', 'Bliss' );
%Job = ( 'YY', 'work in a lumbermill',
'TC', 'teach nuclear physics',
'RE', 'watch football');
foreach $person ( 'TS', 'YY', 'RE' ) {
print "My name is $Folk{$person},\n",
"I live in $State{$person},\n",
"I $Job{$person} there.\n\n";
}terbayang kah hasilnya ? jika masih bingung, mungkin anda belum mengenal command foreach yang akan dijelaskan pada bagian lain. Tapi coba perhatikan contoh berikut:
print keys %Folk;
print values %State;
hasilnya adlah sebagai berikut:
YYRETCWisconsinBlissMinnesota.
STANDAR MASUKAN, KELUARAN DAN ERROR
Seperti juga dalam bahasa pemrograman lainny, maka perl memiliki beberapa standar keluaran, masukan dan error sebagai berikut:
STDIN: standar input, normalnya dari keyboard
STDOUT: standar keluaran, normalnya dari console
STDERR: perangkat dimana biasanya pesan kesalahan (error ) ditulis atau ditampilkan
Perhatikan contoh berikut ini:
Print "apakah mobil Anda ?";
$mobil = <STDIN>
print "mobil kamu mereknya $mobil
nih\n";
hasilnya sebagai berikut:
apakah mobil Anda ? karimun
mobil kamu mereknya karimun nih
nah kalau contoh berikut ini, bagaimana hasilnya yah ?open (INDATA, "/etc/stuff/Friday.dat");
open
(LOGFILE, ">/etc/logs/reclaim.log");
print LOGFILE "Log of reclaim procedure\n";
sebelumnya perhatikan Symbol akses file
Symbol
|
Meaning |
<
|
Opens the file for reading. This is the default action. |
>
|
Opens the file for writing. |
>>
|
Opens the file for appending. |
+<
|
Opens the file for both reading and writing. |
+>
|
Opens the file for both reading and writing. |
| (before file name)
|
Treat file as command into which Perl is to pipe text. |
| (after file name)
|
Treat file as command from which input is to be piped to Perl. |
atau mungkin contoh sekedar mencetak pesan berikut:
open (MYLPR, "|lpr -Pmypr");
print MYLPR "A line of output\n";
close MYLPR;
atau sekedar menampilkan isi file ke layar consoleopen (SIGFILE, ".signature");
while (
<SIGFILE> ) {
print; print "\n";
}tetapi kalau pesan error sebaiknya sebagai berikut:
print (STDERR "Oops, something broke.\n");
ALUR KONTROL
Beberapa alur kontrol sederhana sudah kita bicarakan selintas di atas. Sebelum membicarakan terlalu jauh, perlu dipahami bersama pemanfaatan operator or "||" dan and "&&". Contoh berikut ini adalah variabel yang berisi True atau False tergantung dari nilai yang terkandung dari variabel yang dibandingkan:
$Weekend = $Saturday || $Sunday;
variabel $Weekend akan bernilai true jika nilai dari $Saturday atau $Sunday
adalah true.
$Solvent = ($income > 3) &&
($debts < 10);
sedangkan pada contoh diatas variabel $Solvent akan True jika variabel
$income adalah lebih besar dari 3 dan variabel $debt kurang dari 10berikut ini adalaha contoh trick dari pemrograman perl
$value > 10 || print "Oops, low value $value ...\n";
Jika
nilainya lebih besar dari 10, maka sisi sebelah kanan dari ekspresi
diatas tidak akan dievaluasi alias
tidak ada yang dicetak. Tetapi jika nilainya kurang dari 10, maka sis
sebelah kanan dari
ekspresi di atas akan dievaluasi dan
hasilnya . . . .Oops,
low value 6...
Nah hal yang sama juga kita bisa berlakukan pada operator and &&
sebagai berikut:
$value > 10 && print "OK,
value is high enough…\n";
pemrograman perl memang membutuhkan kreatifitas yang baik dari pemrogramnya,
perhatikan trik lainnya:
$length <= 80 || die "Line too
long.\n";
$errorlevel > 3 && warn
"Hmmm, strange error level ($errorlevel)…\n";
open ( LOGFILE, ">install.log")
|| &bust("Log file");
alur kontrol dalam single statement
Terdapat 4 pola alur kontrol yang dikenal dalam perl sebagai berikut:
Statemen dieksekusi jika lokigal ekspresinya true, jika false maka tidak dieksekusi
$max = 100 if $min < 100;print "Empty!\n" if !$full;
statement unless tidak akan dieksekusi jika logikal ekspresi
adala true, jika false maka tidak dieksekusi:
open (ERRLOG, "test.log") unless $NoLog;
print "Success" unless $error>2;
statement while dieksekusi berulang sampai logikal ekspresi
false
$total -= $decrement while $total > $decrement;
$n=1000; "print $n\n" while $n- > 0;
statement until dieksekusi berulang sampai dengan lokgikal ekspresi true
$total += $value[$count++] until $total > $limit;
print RESULTS "Next value: $value[$n++]" until $value[$n] = -1;
alur kontrol majemuk IF
if ( ( $total += $value ) > $limit
) {
print LOGFILE
"Maximum limit $limit exceeded.",
" Offending value was $value.\n";
close (LOGFILE);
die "Too many! Check the log file for details.\n";
}alur kontrol majemuk if than else
if ( !open( LOGFILE, "install.log") ) {
close ( INFILE );
die "Unable to open log file!\n";
}
elseif ( !open( CFGFILE, ">system.cfg") ) {
print LOGFILE "Error during install:",
" Unable to open config file for writing.\n";
close ( LOGFILE );
die "Unable to open config file for writing!\n";
}
else {
print CFGFILE "Your settings go here!\n";
}
Loop – until
until ( $total >= 50 ) {
print "Enter a value: ";
$value = scalar (<STDIN>);
$total += $value;
print "Current total is $total\n";
}
print "Enough!\n";
Loop - for
for ( $count = 0; $count < 100; $count++ ) {
print "Something";
}
PATTERN MATCHING
Salah satu kehebatan perl adalah melakukan pencarian kata atau huruf dan me-replacenya – match and replace pattern. Kemampuan dasra dari pattern matching adalah:
·
Matching: pencocokan pola
- Subtitution: penggantian atau subtitusi dari pola yang tercocokkan
Ekspresi reguler
Pencocokan biasanya menggunakan ekspresi regular, antara lain sebagai berikut:
Assertion
|
Matches | Example | Matches | Doesn't Match |
^
|
Start of string |
^fool
|
foolish
|
tomfoolery
|
$
|
End of string |
fool$
|
April fool
|
foolish
|
\b
|
Word boundary |
be\bside
|
be side
|
beside
|
\B
|
Non-word boundary |
be\Bside
|
beside
|
be side
|
Atom | Matches | Example | Matches | Doesn't Match |
.
|
Any character except newline |
b.b
|
bob
|
bb
|
List of characters in square brackets | Any one of those characters |
^[Bb]
|
Bob, bob
|
Rbob
|
Regular expression in parentheses | Anything that regular expression |
Quantifier
|
Matches | Example | Matches | Doesn't Match |
*
|
Zero or more instances of the atom |
ab*c
|
ac, abc
|
abb
|
+
|
One or more instances of the atom |
ab*c
|
abc
|
ac
|
?
|
Zero or one instances of the atom |
ab?c
|
ac, abc
|
abbc
|
{n}
|
n instances of the atom
|
ab{2}c
|
abbc
|
abbbc
|
{n,}
|
At least n instances of the atom |
ab{2,}c
|
abbc, .abbbc
|
abc |
{nm}
|
At least n, at most m instances of the atom |
ab{2,3}c
|
abbc
|
abbbbc
|
Symbol
|
Matches |
Example
|
Matches
|
Doesn't Match
|
\d
|
Any digit |
b\dd
|
b4d
|
bad
|
\D
|
Non-digit |
b\Dd
|
bdd
|
b4d
|
\n
|
Newline | |||
\r
|
Carriage return | |||
\t
|
Tab | |||
\f
|
Formfeed | |||
\s
|
White space character | |||
\S
|
Non-white space character | |||
\w
|
Alphanumeric character |
a\wb
|
a2b
|
a^b
|
\W
|
Non-alphanumeric character |
a\Wb
|
aa^b
|
aabb
|
Matching
Proses pencocokan pola menggunakan tanda "/" diikuti reguler ekspresi. Perhatikan contoh berikut ini
$prompt = "Enter some text or press Ctrl-Z
to stop: ";
print $prompt;
while (<>) {
/^[aA]/ && print "Starts with a or A. ";
/[0-9]$/ && print "Ends with a digit. ";
/perl/ && print "You said it! ";
print $prompt;
}perhatikan contoh berikut pula:
The
=~
operator performs pattern matching. For example, if: $s = 'One if by land and two if by sea';
then:
if ($s =~ /if by la/) {print "YES"}
else {print "NO"}prints YES,
if ($s =~ /one/)
{print "YES"}
else {print "NO"}
prints NO, if ($s =~ /one/i)
{print "YES"}
else {print "NO"}
SubstitusiProses penggantian kata atau huruf, perhatikan contoh berikut ini:
$house = "henhouse";
$house =~ s/hen/dog/;
akan mengubah henhouse menjadi doghouseperhatikan cara mengubahnya menggunakan operator khusus =~ dan s// dimana memiliki syntax s/pola/source/paramater dengan parameter:
Switch
|
Meaning |
g
|
Perform global matching |
i
|
Case-insensitive matching |
o
|
Evaluate the regular expression once only |
Contoh
penggunaan parameter dan substitusi:
@hits = ("Yon Yonson, Wisconsin" =~ /(\won)/g);
print "Matched on ", join(', ', @hits), ".\n";hasilnya adalah:
Matched on yon, Yon, son, con.
CONTOH PEMAKAIAN PERL
Script perl untuk HTML sederhana:
#!/usr/local/bin/perl
#nama file: coba.pl
print "content-type: text/html\n\n";
print "<HTML><HEAD><TITLE>Selamat
Datang Di Homepage Kami1</TITLE></HEAD>\n";
print "<BODY><H1>Terus
Belajar, Terus Gratis!</H1></BODY></HTML>\n";
exit;
script perl untuk HTML dengan input file:
#!/usr/local/bin/perl
#
# Read in the data file
# Print out HTML formatted lines
#
$file = 'data.txt' ; # Name the file
open(INFO, "<$file" ) ; # Open the file
@lines = <INFO> ; # Read it into an array
close(INFO) ; # Close the file
print "<HTML> <HEAD> <TITLE> PERL output </TITLE> </HEAD>\n" ;
print " <BODY>\n" ;
foreach $line (@lines) # assign @lines to $line, one at a time
{ # braces {} are required, bracket code
print "\n <P> $line </P>" ; # print formatted lines to screen
}
print "\n </BODY>\n</HTML>\n" ;
#
# DONE
#
contoh pemanfaatan reguler ekspresi yang lebih kompleks:
#!/usr/local/bin/perl
#
# Read in the data file
# Print out a HTML formatted lines
#
$file = 'data.txt' ; # Name the file
open(INFO, "<$file") ; # Open the file
@lines = <INFO> ; # Read it into an array
close(INFO) ; # Close the file
$long_line = join("\n", @lines ) ; # Convert array to variable
# retaining end-of-line characters
@dash_sep = split ( /---------/, $long_line ) ; # split long_line at dashes
print "<HTML> <HEAD> <TITLE> PERL output </TITLE> </HEAD>\n" ;
print " <BODY>\n" ;
foreach $line (@dash_sep) # assign @dash_sep to $line, one at a time
{
$line =~ s/line of text./text fragment. /g ; # substitute text
$line =~ s/\n//g ; # remove end of line characters
if ($line =~ /^A third text/ ) # test for 3rd text fragment
{
print " <HR> <BR> \n" ;
}
print " <P> $line </P> \n" ;
}
print " </BODY>\n</HTML>\n" ;
#
# DONE
#
Tidak ada komentar:
Posting Komentar