Ma nemoj da se plasis ima neko ko zna samo su se ljudi malo smorili od pitanja koje postavljaju neki clanovi koje mrzi da razmisljaju a i ne citaju bas nista. Ali dosta ogovaranja pa da krenem.
Kada delis promenljive u istom redu mozda je bolje da koristis ":" nego "|" jer sam ja sa "|" imao lose iskustvo. E sada da bi nam bilo malo lakse i zanimljivije da radimo ajde da ubacimo zenska imena.
Baza je tipa
maja|ana|marija
milica|maja|danijela
E sada kako izglea algoritam
- Procitas celu bazu
- Pronadjes sta zelis da zamenis
- Zamenis isti
- Ponovo upises podatke u file iz koga si procitao
Code:
#Citanje baze
open LOG, "<baza.dat";
@baza = <LOG>;
close LOG;
Code:
#Pronalazenje i promena sadrzaja
for (0..$#baza) {
chomp;
@temp = split /:/, $baza[$_];
#Sada bi otprilike trebalo da znas sta zelis da promenis i na kojoj se to poziciji
#nalazi recimo zelis da promenis ime "ana" imenom "anabela"
if ($temp[1] eq "ana") {
$temp[1] = "anabela";
@baza = join ":", @temp;
last;
}
}
Sada smo promenili sadrzaj sada je lako upisati isti u file
Code:
open LOG, ">baza.dat";
for (@baza) {
chomp;
print LOG "$_\n";
close LOG;
E sada ovo je najdnostavnije resenje i ovo radi pod uslovo ako znas sta menjas sa cime ga menjas i gde se to nalazi u bazi. Ako sve to ne znas onda u igru ulaze regular expressions, subroutines, ako zelis bas da napravis napredni program onda i references i tada se problem znatno komplikuje.