tag:forum.selfhtml.org,2005:/self RegExp nach 36 Zeichen soll ein Wort &shy dazwischen bekommen – SELFHTML-Forum 2010-07-06T09:13:12Z https://forum.selfhtml.org/self/2010/jun/9/regexp-nach-36-zeichen-soll-ein-wort-shy-dazwischen-bekommen/1452458#m1452458 philiwilli 2010-06-09T11:06:31Z 2010-06-09T11:06:31Z RegExp nach 36 Zeichen soll ein Wort &shy dazwischen bekommen <p>Hey.</p> <p>Das längste Wort im Duden hat 36 Wörter!<br> Alles längere sorgt ja nach Design auch für eine hässliche overflow Handhabung.<br> Ich bräuchte einen RegExp welcher bei Wörtern mit mehr als 36 Zeichen bzw. "alle 36 Zeichen" ein &shy; dazwischen setzt.<br> Kann mir da jemand weiterhelfen?<br> Ich würde vor dem eintragen in die DB dann preg_match_all() drüber laufen lassen.</p> <p>Lg, philiwilli</p> https://forum.selfhtml.org/self/2010/jun/9/regexp-nach-36-zeichen-soll-ein-wort-shy-dazwischen-bekommen/1452467#m1452467 Cheatah 2010-06-09T11:11:06Z 2010-06-09T11:11:06Z RegExp nach 36 Zeichen soll ein Wort &shy dazwischen bekommen <p>Hi,</p> <blockquote> <p>Das längste Wort im Duden hat 36 Wörter!</p> </blockquote> <p>nur aus diesem Grund ist es möglich, mit Microsoft Word sogar ganze Texte zu verfassen. SCNR.</p> <blockquote> <p>Ich bräuchte einen RegExp</p> </blockquote> <p>Aus welchem Grund wählst Du ausgerechnet dieses Werkzeug zu Deinem Problem?</p> <blockquote> <p>welcher bei Wörtern mit mehr als 36 Zeichen bzw. "alle 36 Zeichen" ein &shy; dazwischen setzt.</p> </blockquote> <p>Wörter extrahieren, der Reihe nach durchgehen, alle 36 Zeichen "&shy;" einfügen. Sei Dir übrigens dessen bewusst, dass diese Entity nicht von allen aktuellen Browsern unterstützt wird. Schwachpunkt ist hier ausnahmsweise der derzeit vermutlich verbreitetste Browser, nämlich Firefox.</p> <blockquote> <p>Ich würde vor dem eintragen in die DB dann preg_match_all() drüber laufen lassen.</p> </blockquote> <p>Nein, das ist der falsche Zeitpunkt. In die Datenbank gehören die Daten, nicht eine eventuell gewünschte Präsentation derselben. Du möchtest die Veränderung unmittelbar vor der Ausgabe durchführen.</p> <p>Cheatah</p> <div class="signature">-- <br> X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|<br> X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html<br> X-Will-Answer-Email: No<br> X-Please-Search-Archive-First: Absolutely Yes </div> https://forum.selfhtml.org/self/2010/jun/9/regexp-nach-36-zeichen-soll-ein-wort-shy-dazwischen-bekommen/1452462#m1452462 Joachim wendenburg@t-online.de http://www.schwarz-weiss.net 2010-06-09T11:22:27Z 2010-06-09T11:22:27Z RegExp nach 36 Zeichen soll ein Wort &shy dazwischen bekommen <p>Hi,</p> <blockquote> <p>Ich bräuchte einen RegExp welcher bei Wörtern mit mehr als 36 Zeichen bzw. "alle 36 Zeichen" ein &shy; dazwischen setzt.</p> </blockquote> <p>Wo ist das Problem?<br> preg_replace("#([\w]{36})#", "$1&shy;", $str);<br> Was ist mit "-" oder anderen nicht-alphanumerischen Zeichen?</p> <p>Vielleicht auch mal an ein flexibleres Layout denken?</p> <p>Gruesse, Joachim</p> <div class="signature">-- <br> Am Ende wird alles gut. </div> https://forum.selfhtml.org/self/2010/jun/9/regexp-nach-36-zeichen-soll-ein-wort-shy-dazwischen-bekommen/1452461#m1452461 Jean-Max schanmaexle@gmx.de 2010-06-09T11:24:33Z 2010-06-09T11:24:33Z RegExp nach 36 Zeichen soll ein Wort &shy dazwischen bekommen <p>Bounjoun philiwilli,</p> <blockquote> <p>Das längste Wort im Duden...</p> </blockquote> <p>...ist welches?</p> <p>Im Studium lernte ich:</p> <p>Reichsdeputationshauptschluss</p> <p>aber das hat nur 29 <del>Wörter</del><ins>Buchstaben</ins>!</p> <p>Immerhin schlägt es das landesweit anerkannte längste frz. Wort:</p> <p><a href="http://fr.wikipedia.org/wiki/Mots_les_plus_longs_en_fran%C3%A7ais" rel="nofollow noopener noreferrer">anticonstitutionnellement</a></p> <p>welches 4 <del>Wörter</del><ins>Buchstaben</ins> weniger zählt. Und das Benutzen dieses Wort ist nicht verfassungswidrig - auch wenn selten gebraucht ;)</p> <p>Adiou.</p> https://forum.selfhtml.org/self/2010/jun/9/regexp-nach-36-zeichen-soll-ein-wort-shy-dazwischen-bekommen/1452460#m1452460 Jean-Max schanmaexle@gmx.de 2010-06-09T11:35:29Z 2010-06-09T11:35:29Z RegExp nach 36 Zeichen soll ein Wort &shy dazwischen bekommen <p>Rebounjoun philiwilli,</p> <blockquote> <p>Das längste Wort im Duden hat 36 Wörter!</p> </blockquote> <p>Was ist mit dem:<br> <a href="http://eo.wikipedia.org/wiki/Rindfleischetikettierungs%C3%BCberwachungsaufgaben%C3%BCbertragungsgesetz" rel="nofollow noopener noreferrer">Rindfleischetikettierungsüberwachungsaufgabenübertragungsgesetz</a>?</p> <p>(gefunden auf: <a href="http://eo.wikipedia.org/wiki/Plej_longaj_vortoj" rel="nofollow noopener noreferrer">http://eo.wikipedia.org/wiki/Plej_longaj_vortoj</a></p> <p>Nein, ich kann kein Esperanto. Aber Links folgen :)</p> <p>Adiou.</p> https://forum.selfhtml.org/self/2010/jun/9/regexp-nach-36-zeichen-soll-ein-wort-shy-dazwischen-bekommen/1452459#m1452459 at 2010-06-22T08:07:06Z 2010-06-22T08:07:06Z RegExp nach 36 Zeichen soll ein Wort &shy dazwischen bekommen <p>Hallo.</p> <blockquote> <p>Das längste Wort im Duden hat 36 Wörter!</p> </blockquote> <p>Zusammengesetzte Wörter können eine beliebige Länge erreichen. Trennen solltest du nur in Ausnahmefällen zwischen normalen Silben. Trennungen zwischen Wortteilen zusammengesetzter Wörter genügen meist.<br> MfG, at</p> https://forum.selfhtml.org/self/2010/jun/9/regexp-nach-36-zeichen-soll-ein-wort-shy-dazwischen-bekommen/1452465#m1452465 philiwilli 2010-06-09T13:46:01Z 2010-06-09T13:46:01Z RegExp nach 36 Zeichen soll ein Wort &shy dazwischen bekommen <p>Hi.</p> <blockquote> <p>Was ist mit "-" oder anderen nicht-alphanumerischen Zeichen?</p> <p>Vielleicht auch mal an ein flexibleres Layout denken?</p> </blockquote> <p>Sorry geht in diesem Falle nicht, die Breite ist fix.</p> <p>word-break kann noch nicht jeder und funktioniert ebenfalls nicht zuverlässig. Overflow schenkt mir hässliche Scrollbalken, es ist schrecklich.</p> <p>Hast du eine Alternative?</p> <p>Lg, Philiwilli</p> https://forum.selfhtml.org/self/2010/jun/9/regexp-nach-36-zeichen-soll-ein-wort-shy-dazwischen-bekommen/1452463#m1452463 Gunnar Bittersmann selfhtml@bittersmann.de http://bittersmann.de/ 2010-06-09T16:18:27Z 2010-06-09T16:18:27Z RegExp nach 36 Zeichen soll ein Wort &shy dazwischen bekommen <p>@@Joachim:</p> <p>nuqneH</p> <blockquote> <blockquote> <p>Ich bräuchte einen RegExp welcher bei Wörtern mit mehr als 36 Zeichen bzw. "alle 36 Zeichen" ein &shy; dazwischen setzt.<br> Wo ist das Problem?</p> </blockquote> </blockquote> <p><a href="http://community.de.selfhtml.org/zitatesammlung/zitat1418" rel="nofollow noopener noreferrer">Dort.</a></p> <p>Es ist unsinnig, zu diesem Zweck einen regulären Ausdruck einsetzen zu wollen. Das ginge mit Stringoperationen.</p> <p>Allerdings ist der Zweck schon recht unsinnig. Wie Alexander (HH) schon <a href="https://forum.selfhtml.org/?t=198348&m=1331767" rel="noopener noreferrer">sagte</a>, sollten man '&shy;' dort einfügen, wo es sinnvoll ist. "Hyphenation" / "hyphenator" wären die Suchbegriffe.</p> <p>Qapla'</p> <div class="signature">-- <br> Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.<br> (Mark Twain) </div> https://forum.selfhtml.org/self/2010/jun/9/regexp-nach-36-zeichen-soll-ein-wort-shy-dazwischen-bekommen/1452464#m1452464 Joachim wendenburg@t-online.de http://www.schwarz-weiss.net 2010-06-10T07:23:01Z 2010-06-10T07:23:01Z RegExp nach 36 Zeichen soll ein Wort &shy dazwischen bekommen <p>Hi Gunnar,</p> <blockquote> <p><a href="http://community.de.selfhtml.org/zitatesammlung/zitat1418" rel="nofollow noopener noreferrer">Dort.</a></p> </blockquote> <p>Haben wir doch schon diskutiert. Auch wenns von Zawinski ist, überzeugt es mich nicht.</p> <blockquote> <p>Allerdings ist der Zweck schon recht unsinnig.</p> </blockquote> <p>Darüber braucht man allerdings erst gar nicht zu diskutieren. Man stelle sich auch vo, jemand erfindet ein neues "Unwort des Jahres" mit 41 Buchstaben ;-)</p> <p>nun denne, Joachim</p> <div class="signature">-- <br> Am Ende wird alles gut. </div> https://forum.selfhtml.org/self/2010/jun/9/regexp-nach-36-zeichen-soll-ein-wort-shy-dazwischen-bekommen/1452466#m1452466 Alexander (HH) 2010-06-09T15:04:27Z 2010-06-09T15:04:27Z RegExp nach 36 Zeichen soll ein Wort &shy dazwischen bekommen <p>Moin Moin!</p> <blockquote> <blockquote> <p>Vielleicht auch mal an ein flexibleres Layout denken?</p> </blockquote> <p>Sorry geht in diesem Falle nicht, die Breite ist fix.</p> </blockquote> <p>Generell ein dämlicher Ansatz. Insbesondere, weil Du generell weder über die Fontgrößen im Browser noch über die nutzbare Fensterinnenfläche die Kontrolle hast. Du kannst Dich eine Weile der Illusion hingeben, Du hättest sie, aber irgendwann merkst Du, dass im Browser der Nutzer das letzte Wort hat und nicht der Webseitenfrickler.</p> <blockquote> <p>word-break kann noch nicht jeder und funktioniert ebenfalls nicht zuverlässig. Overflow schenkt mir hässliche Scrollbalken, es ist schrecklich.</p> <p>Hast du eine Alternative?</p> </blockquote> <p>Ja, laß den Quatsch mit den festen Breiten sein.</p> <p>Mal davon abgesehen ist "nach 36 Zeichen" keine sinnvolle Silbentrennung. Wenn Du dem Browser helfen willst, mit verschiedenen Fontgrößen und Platzverhältnissen zurecht zu kommen, dann füge das &shy; dort ein, wo es nach Duden & Co. hin gehört, zwischen den Silben. Es gibt dafür (recht aufwenige) Algorithmen. Oder sorge dafür, dass die Trennstellen bereits in der Rohform der Daten vorliegen.</p> <p>Alexander</p> <div class="signature">-- <br> Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so". </div> https://forum.selfhtml.org/self/2010/jun/9/regexp-nach-36-zeichen-soll-ein-wort-shy-dazwischen-bekommen/1452473#m1452473 dedlfix 2010-06-09T11:26:47Z 2010-06-09T11:26:47Z RegExp nach 36 Zeichen soll ein Wort &shy dazwischen bekommen <p>Hi!</p> <blockquote> <p>Wörter extrahieren, der Reihe nach durchgehen, alle 36 Zeichen "&shy;" einfügen. Sei Dir übrigens dessen bewusst, dass diese Entity nicht von allen aktuellen Browsern unterstützt wird. Schwachpunkt ist hier ausnahmsweise der derzeit vermutlich verbreitetste Browser, nämlich Firefox.</p> </blockquote> <p>Du solltest ihn updaten: <a href="http://wiki.selfhtml.org/wiki/Doku:HTML/Textstrukturierung/Zeilenumbruch#Bedingter_Trennstrich" rel="nofollow noopener noreferrer">SELFHTML-Wiki: Bedingter Trennstrich</a> und <a href="http://aktuell.de.selfhtml.org/weblog/bedingter-zeilenumbruch-shy" rel="nofollow noopener noreferrer">SELFHTML-Aktuell: Bedingter Zeilenumbruch mit »Soft Hyphen« nun auch in Firefox</a>.</p> <p>Du könntest mit einem 3er Firefox mal das Wiki besuchen und dann deinen Viewport in X-Richtung ausreichend verkleinern, dann wirst du im linksseitigen Menü einen bedingten Umbruch beim Wort "Themenschwerpunkte" live miterleben können.</p> <p>Lo!</p> https://forum.selfhtml.org/self/2010/jun/9/regexp-nach-36-zeichen-soll-ein-wort-shy-dazwischen-bekommen/1452468#m1452468 Gunnar Bittersmann selfhtml@bittersmann.de http://bittersmann.de/ 2010-06-09T17:18:09Z 2010-06-09T17:18:09Z RegExp nach 36 Zeichen soll ein Wort &shy dazwischen bekommen <p>@@Cheatah:</p> <p>nuqneH</p> <blockquote> <p>Schwachpunkt ist hier ausnahmsweise der derzeit vermutlich verbreitetste Browser, nämlich Firefox.</p> </blockquote> <p>UPDATE Cheatah SET Kenntnisstand = Kenntnisstand + 'Firefox ab 3.0 kennt &shy; auch';</p> <p>(frei nach MudGuard [<a href="http://community.de.selfhtml.org/zitatesammlung/zitat522" rel="nofollow noopener noreferrer">1</a>, <a href="http://community.de.selfhtml.org/zitatesammlung/zitat880" rel="nofollow noopener noreferrer">2</a>])</p> <p>Qapla'</p> <div class="signature">-- <br> Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.<br> (Mark Twain) </div> https://forum.selfhtml.org/self/2010/jun/9/regexp-nach-36-zeichen-soll-ein-wort-shy-dazwischen-bekommen/1452469#m1452469 ChrisB 2010-06-15T14:19:12Z 2010-06-15T14:19:12Z RegExp nach 36 Zeichen soll ein Wort &shy dazwischen bekommen <p>Hi,</p> <blockquote> <p>UPDATE Cheatah SET Kenntnisstand = Kenntnisstand + 'Firefox ab 3.0 kennt &shy; auch';</p> </blockquote> <p>Beschäftige dich mit Normalisierung ;-)</p> <p>MfG ChrisB</p> <div class="signature">-- <br> “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam] </div> https://forum.selfhtml.org/self/2010/jun/9/regexp-nach-36-zeichen-soll-ein-wort-shy-dazwischen-bekommen/1452470#m1452470 MudGuard http://www.andreas-waechter.de/ 2010-06-28T20:33:00Z 2010-06-28T20:33:00Z RegExp nach 36 Zeichen soll ein Wort &shy dazwischen bekommen <p>Hi,</p> <blockquote> <blockquote> <p>UPDATE Cheatah SET Kenntnisstand = Kenntnisstand + 'Firefox ab 3.0 kennt &shy; auch';<br> Beschäftige dich mit Normalisierung ;-)</p> </blockquote> </blockquote> <p>Cheatah can't be normalized ... ;-)</p> <p>cu,<br> Andreas</p> <div class="signature">-- <br> <a href="http://MudGuard.de/" rel="nofollow noopener noreferrer">Warum nennt sich Andreas hier MudGuard?</a><br> <a href="http://ostereier.andreas-waechter.de/" rel="nofollow noopener noreferrer">O o ostern ...</a><br> Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.<br> </div> https://forum.selfhtml.org/self/2010/jun/9/regexp-nach-36-zeichen-soll-ein-wort-shy-dazwischen-bekommen/1452471#m1452471 LX 2010-06-29T11:47:40Z 2010-06-29T11:47:40Z RegExp nach 36 Zeichen soll ein Wort &shy dazwischen bekommen <blockquote> <p>Cheatah can't be normalized ... ;-)</p> </blockquote> <p>And don't even THINK about neutering... ;-)</p> <p>Gruß, LX</p> <div class="signature">-- <br> RFC 1925, Satz 2: Egal, wie fest man schiebt, ganz gleich, wie hoch die Priorität ist, man kann die Lichtgeschwindigkeit nicht erhöhen. </div> https://forum.selfhtml.org/self/2010/jun/9/regexp-nach-36-zeichen-soll-ein-wort-shy-dazwischen-bekommen/1452472#m1452472 MudGuard http://www.andreas-waechter.de/ 2010-06-29T13:50:29Z 2010-06-29T13:50:29Z RegExp nach 36 Zeichen soll ein Wort &shy dazwischen bekommen <p>Hi,</p> <blockquote> <blockquote> <p>Cheatah can't be normalized ... ;-)<br> And don't even THINK about neutering... ;-)</p> </blockquote> </blockquote> <p>CUT!</p> <p>cu,<br> Andreas</p> <div class="signature">-- <br> <a href="http://MudGuard.de/" rel="nofollow noopener noreferrer">Warum nennt sich Andreas hier MudGuard?</a><br> <a href="http://ostereier.andreas-waechter.de/" rel="nofollow noopener noreferrer">O o ostern ...</a><br> Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.<br> </div> https://forum.selfhtml.org/self/2010/jun/9/regexp-nach-36-zeichen-soll-ein-wort-shy-dazwischen-bekommen/1452474#m1452474 Pryos noreg pryos@pryos.org 2010-06-09T13:51:42Z 2010-06-09T13:51:42Z RegExp nach 36 Zeichen soll ein Wort &shy dazwischen bekommen <blockquote> <p>Hi!</p> <p>Du solltest ihn updaten: <a href="http://wiki.selfhtml.org/wiki/Doku:HTML/Textstrukturierung/Zeilenumbruch#Bedingter_Trennstrich" rel="nofollow noopener noreferrer">SELFHTML-Wiki: Bedingter Trennstrich</a> und <a href="http://aktuell.de.selfhtml.org/weblog/bedingter-zeilenumbruch-shy" rel="nofollow noopener noreferrer">SELFHTML-Aktuell: Bedingter Zeilenumbruch mit »Soft Hyphen« nun auch in Firefox</a>.</p> </blockquote> <p>Ich hätte nicht damit gerechnet in DIESEM Forum Leute zu lesen, die einen Browser älter als 2007 nutzten (vom IE6-Testclient abgesehen).</p> <blockquote> <p>Du könntest mit einem 3er Firefox mal das Wiki besuchen und dann deinen Viewport in X-Richtung ausreichend verkleinern, dann wirst du im linksseitigen Menü einen bedingten Umbruch beim Wort "Themenschwerpunkte" live miterleben können.</p> </blockquote> <p>Ganz hübsch, aber bei 800x600 fehlen ein paar &shy; :p.</p> https://forum.selfhtml.org/self/2010/jun/9/regexp-nach-36-zeichen-soll-ein-wort-shy-dazwischen-bekommen/1452475#m1452475 Peter Pan 2010-07-06T09:13:12Z 2010-07-06T09:13:12Z RegExp nach 36 Zeichen soll ein Wort &shy dazwischen bekommen <p>Hi!</p> <blockquote> <p>Ich hätte nicht damit gerechnet in DIESEM Forum Leute zu lesen,</p> </blockquote> <p>und ich nicht damit, dass Du so etwas vermögest..</p> <p>off:PP</p> <div class="signature">-- <br> "You know that place between sleep and awake, the place where you can still remember dreaming?" (Tinkerbell)<br> </div>