Sunteți pe pagina 1din 5

O expresie regulata este o secventa de caractere cu rol de sablon.

Caractere speciale

^ indicator inceput de linie


$ indicator sfarsit de linie
* caracterul anterior, repetat de oricate ori (>=0)
. orice caracter

[] un caracter dintre cele din lista


[^] orice caracter cu exceptia celor din lista

\ scoate din contextul uzual caracterul care urmeaza

Caractere speciale extinse

+ caracterul anterior, repetat cel putin o data (>0)


? caracterul anterior,cel mult o aparitie
<> un cuvant intreg
(|) lista de optiuni (SAU)
{} repetarea unui caracter de un numar precizat de ori

Utilitarul grep extrage dintr-un fisier acele linii care contin siruri de caractere ce
satisfac un sablon dat.
Optiuni utile pentru grep:

w selecteaza cuvint
i case insensitive
v selecteaza liniile care NU satisfac sablonul

Exemple
1. grep -w 't[a-i]e' -> tee, the, tie, ...
2. grep -w 'cr[a-m]*t' -> credit, craft, cricket, ...
3. grep -w 'kr.*n' -> kremlin, krypton, ...
4. egrep -w '(th|sh).*rt' -> shirt, short, thwart, ...
5. grep -w 'thr[aeiou]*t'-> threat, throat, ...
6. grep -w 'thr[^a-f]*t' -> throughput, trust, ...
7. grep -w 'th[a-t]{2,3}t' -> theft, thirst, threat, thrift, throat, ...
8. grep -w 'th[a-t]{4,6}t' -> thicket, thinnest, therorist, ...
9. grep 'trot' -> trot, electrotherapist, ...
10. grep '<trot>' -> trot

Alte exemple
1. cat myfile | grep '^ *The.*hack\. *$'
toate liniile care incept cu The si se sfarsesc cu hack., indiferent de numarul
spatiilor albe de la inceput si de la sfarsit.
2. cat /bin/bash | strings | tr 'A-Z' 'a-z' | grep '^[a-z]' | sort -u > mydict
3. egrep "^(-|\+|[0-9]*)[0-9]*\.{0,1}[0-9]*$"
selecteaza sirurile de cifre care incep eventul cu + sau - si contin cel mult un .

Cauta text in baza de date


Descriere:
script care sa caute un cuvant intr-o tabela MySql ce contine un camp de tip text si sa-l afiseze diferit fata
de celelalte cuvinte din acel text.
Trimis de:mikitu
Voturi:8121
Situatie voturi:
Accesari:901
Sintaxa:

<?php
if(!isset($ob) || $ob=='d\') $order=\"online_date\";
else $order=\"title\";
if(!isset($s) || $s==\'d\') $ascdesc=\"desc\";
else $ascdesc=\"asc\";
if($caut==1)
{
$cuvant=$search;
$cuvant=trim($cuvant);
$cuvant_initial = ereg_replace (\" \", \"+\", $search);
if ($cuvant==\"\") $cuvant=\"7rtrd5ds6ds6x\";
$cuvant
= strtolower ($cuvant);
$cuvant
= ereg_replace (\",\" , \" \" , $cuvant);
$cuvant
= ereg_replace (\"_\" , \" \" , $cuvant);
$cuvant
= ereg_replace (\"-\" , \" \" , $cuvant);
$cuvant
= ereg_replace (\"=\" , \" \" , $cuvant);
$cuvant
= ereg_replace (\"&\" , \" \" , $cuvant);
$cuvant
= ereg_replace (\"\\+\" , \" \" , $cuvant);
$cuvant
= ereg_replace (\"[ ]+\" , \" \" , $cuvant);
$i = strlen ($cuvant);
$search_arr=split(\" \",$cuvant);
$q=\"select * from table where (status=1 or status=3) and ( \";
$cuvinte=array(\"pentru\",\"de\",\"la\",\"in\",\"dupa\",\"cum\",\"dar\",
\"iar\",\"pe\",\"chiar\",\"si\",\"ce\",\"lui\");
while(list($k,$v)=each($search_arr))
{
if( in_array(strtolower($v),$cuvinte) || strlen($v)==1) continue;

$cuv=$v;
$cuv1=strtoupper($v);
$cuv2=strtolower($v);
$cuv3=ucfirst($v);
$q.=\"cuv_cheie
regexp \'(^|[^a-zA-Z])$cuv2([^a-zA-Z]|$)\' OR \";
}
$nq=strlen($q);
$q=substr($q,0,$nq-3);
$q.=\" ) and online_date not like \'%0000-00-00%\' order by $order $a
scdesc\";
$res=mysql_query($q) or die(mysql_error());
$gasite=mysql_num_rows($res);
}
?>

Validare email
Descriere:
Valideaza o adresa de email folosind eregi
Trimis de:cristi
Voturi:2528
Situatie voturi:
Accesari:857
Sintaxa:

<?php

function is_email_valid($email) {
if(eregi("^[a-z0-9\._-]+@+[a-z0-9\._-]+\.+[a-z]{2,3}$", $email)) r
eturn TRUE;
else return FALSE;
}
?>

Rotatie banner
Descriere:
Roteste bannere in interiorul unei pagini
Trimis de:cristi
Voturi:8539
Situatie voturi:
Accesari:1034
Sintaxa:

<?php

$File = 'stat.txt';
$Images[] = 'Banner1.gif';
$Images[] = 'Banner2.gif';
$Images[] = 'Banner3.gif';
$fp = fopen($File, 'r');
$Stat = fread($fp, filesize($File));
fclose($fp);
if($Stat >= count($Images)) $Stat = 0;
echo $Images[$Stat];
$Stat++;
$fp = fopen($File, 'w');
fwrite($fp, $Stat);
fclose($fp);
?>

Verificare link
Descriere:
Verificare disponibilitate link.
Trimis de:admin
Voturi:2893
Situatie voturi:
Accesari:664
Sintaxa:

<?php
$test = fsockopen("www.phpromania.net", 80, &$nr_eroare, &$str_eroare, 3
0);
if(!$test)
{
echo "phpromania offline";
}
else
{
echo "phpromania online";
}
?>

Generare Thumbnail
Descriere:

Aceasta este o functie de creare si salvare a unui thumbnail pentru o poza. Este preluata partial de pe
phpfreaks.com, iar eu am adaugat un IF care evalueaza si poate prelucra corect imaginea indiferent de
orientare rezultatul avand o inaltime maxima de 75 pixeli si o latime variabila in functie de natura pozei.
Mai pe romaneste, nu sfarsesti cu thumbailuri deformate daca poza are o latime mai mica decat inaltimea.
Trimis de: tsk
Voturi:8753
Situatie voturi:
Accesari:1059
Sintaxa:

<?php
header("Content-type: image/jpeg");
function thumb_jpeg($image_name)
{
$destination_path= "thumb/";
list($width, $height) = getimagesize($image_name);
if ($height>$width) {
$new_height=75;
$new_width=$width*$new_height/$height;
} else {
$new_width=100;
$new_height=75;
}
$destimg=imagecreatetruecolor($new_width,$new_height) or die("Problem In
Creating image");
$srcimg=ImageCreateFromJPEG($image_name) or die("Problem In opening Sour
ce Image");
imagecopyresampled($destimg,$srcimg,0,0,0,0,$new_width,
$new_height,ImageSX($srcimg),ImageSY($srcimg)) or die("Problem In resizi
ng");
ImageJPEG($destimg,$destination_path.$image_name) or die("Problem In sav
ing");
};
?>

S-ar putea să vă placă și