Avatar billede clausga Nybegynder
21. marts 2005 - 18:41 Der er 19 kommentarer og
1 løsning

rewrite en titel

Jeg har nogle titler som fx ser sådan ud:

Panasonic RX-5482

elller

Panasonic Microovn R4 447

Kan man lave noget sådan rewriter til

Panasonic/Microovn

og så smider alt væk efter nummer 2 mellemrum ?
Avatar billede jakobdo Ekspert
21. marts 2005 - 18:46 #1
Altså: Panasonic Microovn R4 447
Skal blive til: Panasonic/Microovn
Avatar billede clausga Nybegynder
21. marts 2005 - 18:53 #2
Ja lige præsis.... og hvis den så også kunne lave alle bogstaver små ville de være rigtig godt :) ?
Avatar billede jakobdo Ekspert
21. marts 2005 - 19:49 #3
Men du må have andre eksempler?
Det er jo svært at få dette: Panasonic RX-5482
til at blive dette: Panasonic/Microovn

Kan du vise mig en 3-4 titler, og hvad de hver især skal laves om til?
Avatar billede clausga Nybegynder
21. marts 2005 - 19:53 #4
Panasonic Plasma TH37PA30 -> panasonic/plasma
JBL HF-365 Bilstereo -> jbl/hf-365
Sony Digital-Kamera 5578 -> sony/digital-kamera
Avatar billede jakobdo Ekspert
21. marts 2005 - 20:27 #5
Det er ikke smukt, men prøv denne:

function convertText($input)
{
    $firstSpace = strpos($input, ' ');
    $firstText = substr($input,0,$firstSpace);
    $firstSpace++;
   
    $secondSpace = strpos($input, ' ', $firstSpace);
    $secondText = substr($input,$firstSpace,$secondSpace-$firstSpace);
   
    return strtolower($firstText) . "/" . strtolower($secondText);
}
Avatar billede clausga Nybegynder
21. marts 2005 - 20:38 #6
$input er input txt ?

og hvad er ud texten ?
Avatar billede jakobdo Ekspert
21. marts 2005 - 20:40 #7
$input er f.eks: Panasonic Plasma TH37PA30
$output er så: panasonic/plasma
Avatar billede clausga Nybegynder
21. marts 2005 - 20:51 #8
Jeg synes ikke der bliver lavet et output et sted ??? du skriver det ikke er smukt hvad mener du med det ?
Avatar billede jakobdo Ekspert
21. marts 2005 - 20:55 #9
Du skal bruge koden sådan her f.eks:

function convertText($input)
{
    $firstSpace = strpos($input, ' ');
    $firstText = substr($input,0,$firstSpace);
    $firstSpace++;
 
    $secondSpace = strpos($input, ' ', $firstSpace);
    $secondText = substr($input,$firstSpace,$secondSpace-$firstSpace);
 
    return strtolower($firstText) . "/" . strtolower($secondText);
}

echo convertText("Panasonic Plasma TH37PA30");

Og med smukt mener jeg man højst sandsynligt kunne lave det smukkere og smartere med en regexp, men det var mine evner desværre ikke lige til.
Avatar billede clausga Nybegynder
21. marts 2005 - 21:02 #10
det virker ikke hvis titlen fx. er= Panasonic NN-Q543
Avatar billede clausga Nybegynder
21. marts 2005 - 21:19 #11
Kan godt være jeg udtrykte mig lidt forkert sorry :(

men der kan også forekomme titler der ser sådan ud fx:

Panasonic NN-Q543 panasonic/nn-q543

Profi Gold 24K Scart kabel -> profi/gold
Avatar billede jakobdo Ekspert
21. marts 2005 - 21:27 #12
Prøv denne funktion:

<?php

function convertText($input)
{
    $firstSpace = strpos($input, ' ');
    $firstText = substr($input,0,$firstSpace);
    $firstSpace++;
   
    $secondSpace = strpos($input, ' ', $firstSpace);
    if($secondSpace === false)
        $secondText = substr($input,$firstSpace);
    else
        $secondText = substr($input,$firstSpace,$secondSpace-$firstSpace);
   
    return strtolower($firstText) . "/" . strtolower($secondText);
}

?>
Avatar billede clausga Nybegynder
21. marts 2005 - 21:39 #13
Ja nu virker det...

hvordan gør jeg hvis jeg ikke vil have æøå med... laver jeg en string replace af min titel inden jeg kører den igennem converttext ?
Avatar billede jakobdo Ekspert
21. marts 2005 - 21:44 #14
F.eks. ja!
Avatar billede clausga Nybegynder
21. marts 2005 - 21:46 #15
ok smid et svar :) mange tak for hjælpen
Avatar billede jakobdo Ekspert
21. marts 2005 - 21:49 #16
Svar... (og glad for jeg kunne hjælpe)
Avatar billede clausga Nybegynder
22. marts 2005 - 21:30 #17
hov... jeg udskriver jo mine produkter fra en tabel i en database, og når der så er flere på siden går den galt

den skriver noget med den ikke kan redeclare funtion ??
Avatar billede clausga Nybegynder
22. marts 2005 - 21:34 #18
hov function convertText($input) skulle vist bare placeres uden for løkken ;)
Avatar billede jakobdo Ekspert
22. marts 2005 - 22:40 #19
Virker det nu?
Avatar billede clausga Nybegynder
22. marts 2005 - 23:06 #20
Ja hehe det fungere PERFEKT!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester