Seite 1 von 2

Remove chr(10) -> umbruchentfernung verweigert!

Verfasst: 13.02.2010 02:34
von Max_der_Held
hallo, wie kann ich den befehl "removestring()" und chr(10) zusammenbauen, um die chr(10)-s wegzubekommeN?

garnicht??

ok, folgendes:
ich will/muss aus einem haufen textzeilen eine einzige machen, die ich dann in pb hernehme

Beispiel:

Code: Alles auswählen

<span style='font-size:11.0pt;font-family:"Calibri","sans-serif";
mso-ascii-theme-font:minor-latin;mso-fareast-font-family:Calibri;mso-fareast-theme-font:
minor-latin;mso-hansi-theme-font:minor-latin;mso-bidi-font-family:"Times New Roman";
mso-bidi-theme-font:minor-bidi;mso-ansi-language:DE;mso-fareast-language:DE;
mso-bidi-language:AR-SA;mso-no-proof:yes'><!--[if gte vml 1]><v:shapetype id="_x0000_t75"
 coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe"
 filled="f" stroked="f">
soll mit folgendem code zu einer einzigen pb-string-zeile verarbeitet werden:

Code: Alles auswählen

text.s = GetClipboardText()
text   = ReplaceString ( text , Chr(34) , Chr(34) + " + chr(34) + " + Chr(34))
text   = ReplaceString ( text , Chr(10) , Chr(34) + " + chr(10) + " + Chr(34))
SetClipboardText        ( Output )
aber.. es..es bleiben zeilen.. nur dass dann " + chr(10) + " ...."
in jeder zeile am anfang steht.. und counststring (chr(10) ) ergibt = 0

kann das jemand nachvollziehen?
was mach ich hier denn falsch?? :bluescreen: :shock:

lg
max
( ist nicht lebensnotwendig, aber ich versteh das .. vor allem um die zeit.. einfach nicht mehr..)

Re: Remove chr(10) -> umbruchentfernung verweigert!

Verfasst: 13.02.2010 02:40
von STARGÅTE
Meiner Meinung nach ist ein Zeilenumbruch chr(10)+chr(13) ...

wenn du die chr(10) killst, bleiben die chr(13) natürlich übrig und erzeugen immer noch n Umbruch ...

Re: Remove chr(10) -> umbruchentfernung verweigert!

Verfasst: 13.02.2010 02:45
von AND51
Unter Windows besteht ein Zeilenumbruch nicht nur aus Chr(10), sondern aus Chr(10)+Chr(13).
Es ist allerdings einfacher, wenn du statt diesen beiden Funktionsaufrufen die Konstante #CRLF$ verwendest.
Zeilenumbrüche hängen vom jeweils verwendeten Betriebssystem ab. Unter Windows ist ein Zeilenumbruch für gewöhnlich ein #CRLF$, unter Linux #LF$ und unter Mac #CR$ (dort wird auch zunehmend #LF$ verwendet).

Zur Übersicht hier nochmal die Konstanten:

Code: Alles auswählen

#LF$ = Chr(10)
#CR$ = Chr(13)
#CRLF$ = Chr(10)+Chr(13)
#LF = 13
#CR = 10

Re: Remove chr(10) -> umbruchentfernung verweigert!

Verfasst: 13.02.2010 02:45
von Max_der_Held
chr(13)?.. ich hab bisher immer ausschließlich chr(10) hergenommen... das erklärt dann einiges..^^
ohman.. ist das spät..
jetzt kann ich alle möglichen Dateiarten/bild/aktivXelemente in word einfügen hehe, danke Stargate :)
(bist ja schneller als die feuerwehr :) und ganz schön oft zur stelle, wenn's brennt :D thx :) )
lg
max
[edit] danke auch @ andi :) werds so machen :) (1 sekunde langsamer lol :) )[/edit]

Re: Remove chr(10) -> umbruchentfernung verweigert!

Verfasst: 13.02.2010 02:53
von AND51
Tipp: Statt mehrerer RemoveString()-Aufrufe kann man auch einen ReplaceRegularExpression()-Aufruf nehmen. Der Reguläre Ausdruck zum Entfernen aller möglichen Kombinationen von Zeilenumbrüchen lautet dann:

Code: Alles auswählen

\n|\r
Den Ausdruck in CreateRegularExpression() eingeben, dann mit ReplaceRegularExpression() drüberbügeln und weg sind jede mögliche Kombination aus Leerzeichen, egal ob Chr(10), Chr(10)+Chr(10), Chr(10)+Chr(13), Chr(13)+Chr(10), und so weiter...

Re: Remove chr(10) -> umbruchentfernung verweigert!

Verfasst: 13.02.2010 11:08
von Kiffi

Code: Alles auswählen

Chr(13) + Chr(10)
und nicht umgekehrt!

Grüße ... Kiffi

Re: Remove chr(10) -> umbruchentfernung verweigert!

Verfasst: 13.02.2010 12:43
von Josh
oder vieleicht noch besser auf zwei durchgänge. dann hast du es für alle os erschlagen.

Re: Remove chr(10) -> umbruchentfernung verweigert!

Verfasst: 13.02.2010 13:36
von Kaeru Gaman
was auch nicht erwähnt wurde, dass der Zeilenumbruch meistens anstatt einer Leerstelle steht und nicht zusätzlich.
also wird ein reines Entfernen oft dazu führen, dass Wörter zusammengestellt werden.

ich würde mit einem zweifachen Replace vorgehen:
sowohl Chr(10) als auch Chr(13) durch Chr(32) ersetzen. Das ersetzt in von allen OS stammenden Texten zuverlässig den Zeilenumbruch durch eine Worttrennung.
wenn gewünscht, kann man dann noch mal durchgehen um Double-Spaces zu entfernen, deren Vorhandensein tut allerdings dem Informationsgehalt keinen Abbruch.

Re: Remove chr(10) -> umbruchentfernung verweigert!

Verfasst: 13.02.2010 13:37
von hjbremer
für chr(34) gibt es auch eine Konstante: #DOUBLEQUOTE$

Re: Remove chr(10) -> umbruchentfernung verweigert!

Verfasst: 13.02.2010 14:04
von c4s
hjbremer hat geschrieben:für chr(34) gibt es auch eine Konstante: #DOUBLEQUOTE$
Kürzer ist #DQUOTE$. ;)