![]() |
string nach smileys parsen
Es geht in diesem Thema um einen newsreader für die shoutbox:
Ich hbae einen String den jemand in die shoutbox geschrieben hat. nun möchte ich ihn nach sachen wie : cry: (ohne leerzeichen) durchsuchen und an diesen Stellen trennen. Wenn ich also folgenden string habe: Zitat:
Weiß einer, wie ich an dieses Problem herangehen kann? |
Re: string nach smileys parsen
...vor und nach jedem smiley ist ein leer...
Delphi-Quellcode:
...
" :cry: "
|
Re: string nach smileys parsen
Ich weiß, die habe ich weggelassen, damit er sie nicht angezeigt hat!
|
Re: string nach smileys parsen
Hi,
Suche nach einem ' Dann nach einem 2. ' Denn Text dazwischen wertest du aus und wenn es ein Smiley ist (hast du vorher definiert), dann ersetzt du das '...' durch ein Smiley-Bild. |
Re: string nach smileys parsen
Mach diese Teilstrings in einer Schleife mit Pos ausfindig und schau dir mal
![]() EDIT: oops :oops: :oops:, habe mir deine Frage gar nicht richtig durchgelesen :wall: |
Re: string nach smileys parsen
ungefähr so (UNGEFÄHR)
Delphi-Quellcode:
var Nachricht: String;
LStringlist: TStringlist; begin LStringlist := TStringlist.create; while pos(' ', LNachricht) > 0 do begin LStringlist.Add(copy(Nachricht, 1, pos(' ', LNachricht)-1); LNachricht := copy(LNachricht, length(LStringlist.Strings[LStringlist.count-1]) + 1, length(LNachricht)); end; LStringlist.Free; |
Re: string nach smileys parsen
Vorgehen siehe toms
Funktionen, die helfen können sind Pos/PosEx, Copy, Insert, Delete und/oder StringReplace such dir das Passende aus - hier im Forum und in der OH findest du Geschreibungen dazu Und in der OH ist unter "String-Verarbeitung" noch viel mehr dazu. |
Re: string nach smileys parsen
Ich habs jetzt hinbekommen danke
|
Re: string nach smileys parsen
In der variante vom swissdelphicenter wird der smiley immer an den Anfang vom jvxrichedit gemacht. Ich möchte aber erst Text und dann den Smiley haben. Wie kann ich das machen! Es müsste so sein dass er immer am Ende eingefügt wird
(SourceStream ist das Bild und RichEdit das jvxRichEdit)
Delphi-Quellcode:
procedure PutRTFSelection(RichEdit: TMyRichEdit; SourceStream: TStream);
var EditStream: TEditStream; begin with EditStream do begin dwCookie := Longint(SourceStream); dwError := 0; pfnCallback := EditStreamInCallBack; end; RichEdit.Perform(EM_STREAMIN, SF_RTF or SFF_SELECTION, Longint(@EditStream)); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:04 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz