| 1 2 3 4 | 01 Artiestnaam [01] Artiestnaam (01) Artiestnaam 01. Artiestnaam |
| 1 2 3 4 | (01) Foo Fighters (- All My Life) 01 doe maar (- sinds een dag of twee) 01_solar_fields_ (-_union_light) (underscores worden vervangen door een andere filter) 10. Magic Box (- Carillon) |
Misschien kom ik erg dom en vasthoudend over, maar volgens mij is er wel een patroon. Vanaf de linkerkant van de string (de eerste character):quote:Op dinsdag 22 maart 2005 22:55 schreef Swetsenegger het volgende:
Je hebt dus erg weinig houvast. een reguliere expressie herkent immers een patroon, welke er in jouw geval niet is...
| 1 | 01 doe maar (- sinds een dag of twee) |
Dat klopt, maar [.01.] zal blijven staanquote:Op dinsdag 22 maart 2005 23:00 schreef Heliospan het volgende:
[..]
Misschien kom ik erg dom en vasthoudend over, maar volgens mij is er wel een patroon. Vanaf de linkerkant van de string (de eerste character):
- niks, een '(', of een '['
- Getal van twee cijfers
- niks, een ')', of een ']'
- Een spatie
Hiermee wordt alles uit mijn vorige post gematched. Een artiestnaam als "Massive Attack" niet, die voldoet niet aan de eisen, een artiestnaam als "(01) Foo Fighters" wel.
Dat klopt. Alleen als een artiestnaam begint met 01 t/m 09 zou het in dat geval te filteren zijn. Er is geen bandnaam die met die tekens begint.quote:Op dinsdag 22 maart 2005 23:03 schreef Light het volgende:
Het begint al met de "rotzooi". Als je een artiest hebt waarbij de naam begint met een paar nummers dan hang je meteen al.
Dat zijn twee verschilende variabelen. Dus ja, kan ik garanderenquote:En de scheiding tussen artist en title is ook niet duidelijk, het wordt makkelijker als je daar een " - " kunt garanderen. Maar dan blijf je met het probleem zitten van die artiesten waarvan de naam begint met cijfers.
Maar je hebt soms meer dan 9 tracks op een cd. En op lyrics.com vind ik wel "16 Horsepower", die gaat dus ook mis.quote:Op dinsdag 22 maart 2005 23:06 schreef Heliospan het volgende:
[..]
Dat klopt. Alleen als een artiestnaam begint met 01 t/m 09 zou het in dat geval te filteren zijn. Er is geen bandnaam die met die tekens begint.
Ok, dat scheeltquote:[..]
Dat zijn twee verschilende variabelen. Dus ja, kan ik garanderen
| 1 | /[(\[\(]?[01]\d\.?[\)\]]?\s(.*)/ |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | <?php // $art = "08 Test"; WEL // $art = "[12] Test"; WEL // $art = "{01} Test"; WEL // $art = "(01) Test"; WEL // $art = "09. Test"; WEL // $art = "Massive Attack"; NIET // $art = "182 Stitches"; NIET $crap_begin = array("[", "(", "{"); $crap_eind = array("]", ")", "}"); if( in_array( substr( $art, 0, 1 ), $crap_begin ) && in_array( substr( $art, ( strpos ($art, " ") - 1 ), 1), $crap_eind) ) $art = substr( $art, ( strpos ( $art, " ") + 1 ) ); if( substr( $art, 0, 1 ) == "0" && preg_match( "/[0-9]/", substr( $art, 1, 1 ) ) ) $art = substr( $art, 2 ); if( substr( $art, 0, 1 ) == "." ) $art = substr( $art, 1 ); $art = trim($art); ?> |
Dan ben ik toch benieuwd wat je eraan hebt aangepastquote:Op dinsdag 22 maart 2005 23:32 schreef Heliospan het volgende:
Lijkt met een kleine wijziging goed te werken! Bedankt!
| 1 | $clean = preg_replace('#^\s*[({[]?[01]?[0-9]?[)}\x5d.]?(?!\d)\s*#', '', $dirty); |
| 1 2 3 4 5 6 7 8 9 10 | # ^ begin string \s* 0 of meer spaties of tabs [({[]? 0 of 1 keer een (, { of [ [01]? 0 of 1 keer een 0 of 1 [0-9]? 0 of 1 keer een cijfer [)}\x5d.]? 0 of 1 keer een ), }, ] of . (?!\d) niet gevolgd door een cijfer \s* 0 of meer spaties of tabs # |
Zonder extra informatie over bestaande titels kan je die nooit onderscheiden van "16 Foo Fighters". Kan je niet beter zoeken in http://www.freedb.org?quote:Op woensdag 23 maart 2005 01:28 schreef Heliospan het volgende:
SuperRembo, ook bedankt! Deze werkt ook goed, behalve weer bij 16 Horsepower. Ik zal proberen een goede tussenweg te vinden
Dus 2pac wordt ook pac. Lijkt me niet de bedoeling eigenlijk.quote:Op dinsdag 22 maart 2005 23:55 schreef SuperRembo het volgende:
Deze werkt goed op de test-set:
[ code verwijderd ]
[ code verwijderd ]
Klopt, die laatste \s* zou beter \s+ kunnen zijn.quote:Op woensdag 23 maart 2005 09:31 schreef Light het volgende:
[..]
Dus 2pac wordt ook pac. Lijkt me niet de bedoeling eigenlijk.
quote:colid colnaam colkm colindex colhoogte
1 MONT VENTOUX (!) 2497 12.4 1909
2 COL DU TOURMALET 1625 11.0 2115
etc etc
tabelnaam: cols
quote:Op woensdag 23 maart 2005 20:17 schreef achterop23 het volgende:
qua php en mysql ben ik echt een beginneling.
Moet voor een website wat dingen in een database zetten.
Ik heb nu een sql database aangemaakt (online bij een gratis server die php en sql ondersteund):
de database is al gevuld, maar heo krijg ik de boel er nu uit eigenlijk, hoe ziet de php code eruit als ik de totale inhoud eruit wil krijgen:
inhoud:
[..]
| 1 2 3 4 5 6 | /* Eerst verbinding maken met de db en tabel selecteren ofcourse */ $query = 'SELECT * FROM tabel'; $result = mysql_query($query); while($rij = mysql_fetch_array($result)) { /* Doe iets met de rij, echo bv. */ } |
bedoel je substr ?quote:Op donderdag 24 maart 2005 09:23 schreef jeroen-heeft-koffie-nodig het volgende:
hoe heet die functie ookalweer die van 'deze teksten enzo' maakt: 'deze teksten....'
?
<?quote:Op donderdag 24 maart 2005 10:19 schreef jeroen-heeft-koffie-nodig het volgende:
hmm heb even op php.net gekeken maar dat is hem niet. Hij moet de tekst inkorten tot een bepaald aantal tekens, en de rest vervangen voor puntjes
substr dus, zie sabanquote:Op donderdag 24 maart 2005 10:19 schreef jeroen-heeft-koffie-nodig het volgende:
hmm heb even op php.net gekeken maar dat is hem niet. Hij moet de tekst inkorten tot een bepaald aantal tekens, en de rest vervangen voor puntjes
| Forum Opties | |
|---|---|
| Forumhop: | |
| Hop naar: | |