Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

Wörter aus Text filtern

Ajax, Hijax, Microformats, RDF, Markup, HTML, PHP, CSS, MySQL, htaccess, robots.txt, CGI, Java, Javascript usw.
Neues Thema Antworten
Michael1967
PostRank 9
PostRank 9
Beiträge: 2158
Registriert: 26.10.2005, 23:51

Beitrag von Michael1967 » 13.12.2006, 19:17

Hallo,

mal eine Frage. Ich möchte alle großgeschriebenen Wörter aus einem Text filtern.

Das klappt so wunderbar –

Code: Alles auswählen

$text = 'dies ist ein Blindtext mit ein paar Geschriebenen Wörtern';
preg_match_all("/[A-Z].[a-z]{4,}/", $text, $hit);
print_r($hit);

Als Ausgabe erhalte ich –

Array ( [0] => Array ( [0] => Blindtext [1] => Geschriebenen [2] => Wörtern ) )

Ich weiß leider nicht, wie ich jetzt an die großgeschriebenen Wörter (getrennt mit einem Komma) ran komme, da dies meine Kenntnisse übersteigt. Hat jemand einen Plan von sowas?

Anzeige von ABAKUS

von Anzeige von ABAKUS »

SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


SloMo
PostRank 10
PostRank 10
Beiträge: 4880
Registriert: 04.01.2005, 18:26

Beitrag von SloMo » 13.12.2006, 19:27

Verstehe ich richtig, Du willst daraus einen kommagetrennten String machen? Für die Meta-Keywords oder so? Versuche mal:

$ergebnis = implode( ',', $hit[0] );

Michael1967
PostRank 9
PostRank 9
Beiträge: 2158
Registriert: 26.10.2005, 23:51

Beitrag von Michael1967 » 13.12.2006, 19:33

Ja genau, ich möchte die Meta-Tags automatisieren.


Und dann ausgeben mit -

echo"$ergebnis";

Nun kommt -

Blindtext,Geschriebenen,Wörtern

Bravo! Vielen Dank. :D

Und wie läuft das mit den Sonderzeichen? Ist das wichtig?

SloMo
PostRank 10
PostRank 10
Beiträge: 4880
Registriert: 04.01.2005, 18:26

Beitrag von SloMo » 13.12.2006, 19:55

> Und wie läuft das mit den Sonderzeichen? Ist das wichtig?

In diesem Fall? So wichtig wie die Meta-Keywords.

Michael1967
PostRank 9
PostRank 9
Beiträge: 2158
Registriert: 26.10.2005, 23:51

Beitrag von Michael1967 » 13.12.2006, 19:58

Schitt, wenn ein ä, ü, ö im Wort ist, dann macht er das - Ferienh, Unterk,


Muss ich bei preg_match_all noch erweitern?

Michael1967
PostRank 9
PostRank 9
Beiträge: 2158
Registriert: 26.10.2005, 23:51

Beitrag von Michael1967 » 13.12.2006, 20:15

Hat sich glaube ich erledig. So geht es -

Code: Alles auswählen

$description = str_replace ( array ( 'ö','ü','ä','Ö','Ü','Ä','.de', '.at', '.com', '.info', '.ch', '.net', '.org', '.br', '.ag','`','ß','---',',','/'), array ( 'oe','ue' ,'ae','Oe','Ue','Ae' ,'', '', '', '', '', '', '', '','','','ss','-','','-'), $description );

Michael1967
PostRank 9
PostRank 9
Beiträge: 2158
Registriert: 26.10.2005, 23:51

Beitrag von Michael1967 » 16.12.2006, 02:04

Und noch eine Frage.

Jetzt habe ich für die Suchbegriffe 200 Zeichen festgelegt. Wenn mehr Zeichen vorhanden sind, dann wird am Ende ja einfach abgeschnitten.

Gibt es eine Möglichkeit, dass nach dem letzten Komma (welches sich irgendwo vor oder nach 200 Zeichen befindet) erst abgeschnitten wird?

Oder kann man auch genau 20 Suchbegriffe ausgeben? Ich habe schon nach einer Lösung gesucht - leider nichts gefunden *heul*

Michael1967
PostRank 9
PostRank 9
Beiträge: 2158
Registriert: 26.10.2005, 23:51

Beitrag von Michael1967 » 16.12.2006, 03:51

Das Kürzen selbst ist ja kein Problem. Aber wenn ich auf 200 Zeichen kürze, dann wird am Schluss ja nur noch Stückwerk angezeigt.

Gibt es da nicht eine Möglichkeit - genau auf 20 Suchbegriffe zu kürzen?

Wenn hiermit mehr als 20 Suchbegriffe ausgegeben werden -

$text = 'dies ist ein Blindtext mit ein paar Geschriebenen Wörtern';
preg_match_all("/[A-Z].[a-z]{4,}/", $text, $hit);
print_r($hit);

d0nut
PostRank 5
PostRank 5
Beiträge: 201
Registriert: 19.08.2004, 10:35
Wohnort: Nidderau

Beitrag von d0nut » 16.12.2006, 10:37

edvsb's Lösung funktioniert doch genau so, wie ich dein anliegen verstehe

es wird die 200ste Stelle gesucht.
Wenn die 200ste Stelle zufälligerweise ein Leerzeichen ist, dann ist Sense.
Ansonsten wird bis zum nächsten Leerzeichen gesucht und dort abgeschnitten.

Keine abgeschnittenen Wörter. Kein "Stückwert"

Die Kürzung auf 20 Suchbegriffe wäre ein anderes Unterfangen.
Dazu lies dir am besten die Doku von https://de.php.net/array_slice durch
https://www.easy-coding.de | Das Coder Forum

Michael1967
PostRank 9
PostRank 9
Beiträge: 2158
Registriert: 26.10.2005, 23:51

Beitrag von Michael1967 » 16.12.2006, 14:05

Okay, vielen Dank. :P

Antworten
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag