xibriz Skrevet 22. januar 2014 Del Skrevet 22. januar 2014 (endret) Jeg har følgende kode: $var1 = "SVHUM C1002"; $var2 = "C 1002 Aud"; $array = explode(" ", $var1); for ($i = 0; $i < count($array); $i++) { $var2 = preg_replace("/(".$array[$i].")/is", "", $var2); } return $var1." ".$var2; Resultat: "SVHUM C1002 C 1002 Aud" Ønsket resultat: "SVHUM C1002 Aud" Noen ideer? Endret 22. januar 2014 av xibriz Lenke til kommentar
Crowly Skrevet 23. januar 2014 Del Skrevet 23. januar 2014 For det første når du skal loope igjennom en array bruk foreach i stedet for for. Det ser ut som str_replace() er mer hva du er på jakt etter. Men du er nødt til å utdype hva du faktisk ønsker å oppnå. Vil du fjerne ting fra $var2 som finnes i $var1? Det er en forskjell på "C1002" og "C 1002" så det kan ikke sammenlignes direkte. Lenke til kommentar
xibriz Skrevet 23. januar 2014 Forfatter Del Skrevet 23. januar 2014 (endret) Ja, jeg vil fjerne ting fra $var2 som finnes i $var1. Mennesket kan se at "C1002" er det samme som "C 1002". Min foreløpige løsning som oppnår det jeg vil er nå: $var1 = "SVHUM C1002"; $var2 = "C 1002 Aud"; $array = explode(" ", $var1); foreach ($array as $var) { $var2 = preg_replace("/(".join('(\\s+)?' , str_split ($var)).")/is", "", $var2); } return $var1." ".$var2; Endret 23. januar 2014 av xibriz Lenke til kommentar
Crowly Skrevet 23. januar 2014 Del Skrevet 23. januar 2014 Mennesket kan se at "C1002" er det samme som "C 1002".Det er ikke det samme, mellomrommet er ganske vesentlig. Hva hvis $var2 = "C 10 02 Aud" eller ="C 1 0 02 Aud", er det fremdeles å anse som det samme? Å kode for ett gitt eksempel å få ut ønsket resultat er en ting, men jeg regner med at du skal bruke dette til noe mer spesifikt? Og at verdiene i $var1 og $var2 vil da være forskjellig fra gang til gang? Og strengene du ønsker å fjerne kan variere? Lenke til kommentar
xibriz Skrevet 23. januar 2014 Forfatter Del Skrevet 23. januar 2014 Ja, jeg har en lang liste med rom, der $var1 er navnet på rommet og $var2 er beskrivelsen på rommet. Jeg prøver å lage en funksjon som returnerer navnet på rommet som en kombinasjon av disse to variablene. Problemet er at informasjon som finnes i $var1 (navn) ofte gjengis i $var2 (beskrivelse). For at resultatet skal se mest mulig pent ut er det en idè å fjerne informasjon fra $var2 som allerede fremkommer av $var1. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå