Autor |
Beitrag |
F34r0fTh3D4rk
      
Beiträge: 5284
Erhaltene Danke: 27
Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
|
Verfasst: Mo 13.06.05 16:13
hallo, ich habe ein richedit, und ich möchte ein wort hervorheben, falls es von einem ' ' oder von nichts umgeben ist, das problem mit dem nichts habe ich allerdings noch, am zeilenanfang habe ich dieses problem zB, #0 geht nicht, und '' erkennt er nicht als char an, hier mal bissl code:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| var P1, P2: PChar; str: string; begin str := copy(richedit1.text, 5, 10); P1 := PChar(copy(richedit1.text, 2, 1)); P2 := PChar(copy(richedit1.text, 5, 1)); if (P1^ in [' ', #0]) and (P2^ in [' ', #0]) then showmessage('Wort von keinem Zeichen umgeben!'); end; |
wenn der code net ganz einwandfrei ist, liegts daran, dass ich den grad aus kopf getippt habe, glaube aber, dass das so richtig ist, womit beginnt denn ein string (eine zeile) ? wie kann man denn "nichts" abfragen außer als #0 ???
Danke schonmal :D Moderiert von raziel: Topic aus Sonstiges verschoben am Mo 13.06.2005 um 16:21
|
|
jasocul
      
Beiträge: 6393
Erhaltene Danke: 147
Windows 7 + Windows 10
Sydney Prof + CE
|
Verfasst: Mo 13.06.05 16:16
Ich denke, du kannst das nur prüfen, indem du feststellst, ob dein gesuchter String an erster Position ist. Es gibt kein spezielles erstes Zeichen in einem String (auch nicht bei PChar).
|
|
F34r0fTh3D4rk 
      
Beiträge: 5284
Erhaltene Danke: 27
Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
|
Verfasst: Mo 13.06.05 16:19
ja aber wie mache ich das, dann muss ich die zeile extrahieren und das dann mit pos prüfen, aber nur, wenn das wort genau am anfang einer zeile beginnt, was wieder schwierig mit richedit.text zu prüfen ist, welches ja in sich ein string ist, komischerweise gehts da auch nicht, also scheinen die zeilen doch einzeln behandelt zu werden, oder wie jetzt ?
|
|
jasocul
      
Beiträge: 6393
Erhaltene Danke: 147
Windows 7 + Windows 10
Sydney Prof + CE
|
Verfasst: Mo 13.06.05 16:41
Ein TRichEdit hat die Eigenschaft Lines.
Mit Lines bekommst du die einzelnen Zeilen. Du musst also nicht RichEdit.Text nehmen.
Der Typ ist TStrings. Damit solltest du, wie ich dich kenne, ohne Probleme zurecht kommen.
|
|
F34r0fTh3D4rk 
      
Beiträge: 5284
Erhaltene Danke: 27
Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
|
Verfasst: Mo 13.06.05 16:44
ja, aber ich muss ja den text durchsuchen, das ist ja das problem 
|
|
jasocul
      
Beiträge: 6393
Erhaltene Danke: 147
Windows 7 + Windows 10
Sydney Prof + CE
|
Verfasst: Mo 13.06.05 16:45
Hast du schonmal den Text gespeichert und manuell (Hex-Editor) nachgesehen, wie du das unterscheiden kannst? Evtl. gibt es ein spezielles Zeichen für einen harten, bzw. einen weichen Zeilenumbruch.
|
|
F34r0fTh3D4rk 
      
Beiträge: 5284
Erhaltene Danke: 27
Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
|
Verfasst: Mo 13.06.05 16:52
müsste ich mal schauen, aber ich werde das dann doch zeilenweise machen, ist dann wohl doch besser  danke
|
|
|