Salve, qualcuno conosce una funzione capace di confrontare due stringhe di
testo e restituirne le differenze? Mi serve per una funzione in Java Script ma
vanno bene anche altri linguaggi, provo io a riprodurle in Js... Grazie!
Salve, qualcuno conosce una funzione capace di confrontare due stringhe di
testo e restituirne le differenze? Mi serve per una funzione in Java Script ma
vanno bene anche altri linguaggi, provo io a riprodurle in Js... Grazie!
mmm dovresti essere più specifico.
Quali tipi di differenze??
Lunghezza? Alcuni caratteri specifici? Alto basso?
Ciaooo!!!!!
in php è possibile verificare che due stringhe siano uguali con:
La funzione restituisce "Le stringhe sono uguali" se le due stringhe sono uguali,"Le stringhe sono diverse" se diverse e nel secondo caso il numero dei caratteri di differenza.Codice PHP:
<?
$stringa1="stringa";
$stringa2="stringa2";
$confronta = strcmp($stringa1,$stringa2);
$caratteri1 = strlen($stringa1);
$caratteri2 = strlen($stringa2);
if ($confronta=="0")
echo "Le stringhe sono uguali";
if ($confronta=="-1")
echo "Le stringhe sono diverse,la prima stringa è composta da $caratteri1 caratteri,la seconda da $caratteri2 caratteri";
?>
Ciao!
Qualche precisazione... in PHP la funzione strcmp mi pare faccia questo: restituisce 0 se le due stringhe sono uguali, un numero negativo (non necessariamente -1) se la prima è lessicograficamente anteriore alla seconda, un numero positivo (non necessariamente 1) se la prima è lessicograficamente posteriore alla seconda. Questo, almeno, era quello che faceva la funzione C di stesso nome dalla quale questa deriva.
Quindi, per confrontare le strighe, questo è il codice corretto:Poi, sull'utilità di strcmp, ci sarebbe alquanto da discutere... visto che mi risulta che "ZORRO" sia anteriore ad "ape" solo perché vengono confrontati i codici ASCII o Unicode dei primi caratteri (e la Z maiuscola precede la a minuscola!)...Codice PHP:
<?php
$val = strcmp ($str1, $str2)
if ($val > 0)
echo ("$str1 è posteriore a $str2");
else if ($val < 0)
echo ("$str1 è anteriore a $str2");
else
echo ("$str1 e $str2 sono uguali");
Stammi bene...
Le questioni tecniche hanno risposte migliori nel forum pubblico, non trovi?
When you don't know your next step... improvise
ALTERVISTA WANTS YOU!
Vuoi diventare moderatore su AlterVista? Scopri come...
Ora mi spiego meglio:
supponiamo di avere due url:
http://www.ciao.it/dir1/dir_2/dir3/nome_del_file.abc
http://www.byebye.it/dir_7/dir2/nome_file.def
mi servirebbe una funzione che confronti i due url e mi restituisca in
due array le differenze ovvero:
Originale[0]="ciao";
Nuovo[0]="byebye";
Originale[1]="dir1";
Nuovo[1]="dir_7";
e così via...
se devi controllare le url prova la funzione di php parse_url().
Jostock sai dove e soprattutto se è possibile trovare il sorgente della suddetta funzione? Potrebbe essere adattata al mio caso ma devo comunque trasportarla in javascript e senza sorgente...Originalmente inviato da jostock
controlla qui: http://lxr.php.net/source/php-src/ex...ic_functions.c
Probid ti ringrazio ma il problema è che pur avendo capito come funziona in php devo riprodurla in javascript pertanto avrei bisogno del sorgente della suddetta funzione... anche se immagino non sia disponibile sul web...
Edit: (by Jostock)
Ora mi scarico la pagina e me la studio un pò...Originalmente inviato da jostock
Grazie ragà
Ultima modifica di jostock : 22-03-2006 alle ore 22.58.06
non fare UP!
Non è stato volontario, i due post si sono accodati perchè il primo l'avevo scritto per Probid ma un attimo prima hai inserito il tuo post ed è finito in fondo e non me ne sono reso conto altrimenti l'avrei semplicemente modificato.
Comunque ho trovato il sorgente della funzione che mi hai indicato:
http://lxr.php.net/source/php-src/ex...dard/url.c#334
ma purtroppo non era di certo quello che mi aspettavo...
non è una funzione a se stante ma frutto di interazione di altre
quindi risalire al suo codice funzionale sarebbe davvero complesso...
credo proprio che dovrò scrivermela da solo, purtroppo però è il tempo che mi manca...
Ultima modifica di GlobeMaster : 22-03-2006 alle ore 23.09.10