Forums Neueste Beiträge
 

regexp in VBA oder Suchen/ Ersetzen nach Pattern

23/10/2007 - 10:11 von Oliver | Report spam
Guten Tag miteinander

Um Zeichen in einem String zu ersetzen, möchte ich eine Funktion,
àhnlich REGEXP verwenden.
Gibt es etwas vergleichbares unter VBA? Und wenn ja, nach was soll ich
googeln?

Konkret geht es um folgendes Beispiel:

strText = "Hallo Welt_2008.400.Wie gehts?"
strInsert = "_2007.45."

Nun soll "2008.4." mit dem Muster "( [Linie][beliebige Anzahl Zahlen]
[Punkt][beliebige Anzahl Zahlen][Punkt] )" durch "strInsert" ersetzt
werden.

Die Zahlen sind beliebig lang und treten an beliebiger Stelle im
String auf. Sie entsprechen aber immer dem genannten Muster.

Grüsse
Oliver
 

Lesen sie die antworten

#1 Thomas Gahler
23/10/2007 - 10:52 | Warnen spam
Hallo Oliver


Gibt es etwas vergleichbares unter VBA?


Ja es gibt zwei Möglichkeiten

a.) Mit Suchen/Ersetzen arbeiten und dabei die Option "Platzhalterzeichen
verwenden" aktivieren (oft mals direkt in Word aufrufbar ohne VBA)

Hinweise dazu findest du hier

- Finding and replacing characters using wildcards
http://word.mvps.org/faqs/general/U...dcards.htm

und wenn du es mit VBA machst, dann diesen noch lesen
- Flush bad karma from Word's find facility after an unsuccessful wildcard
search
http://word.mvps.org/faqs/macrosvba/FlushFR.htm

Googlen kannst du hier
http://groups.google.ch/group/micro...hWildcards


b.) Falls es eher eine Textdatei als eine Worddatei ist (wobei es auch mit
Worddateien geht), dann mittels String-Manipulation (Instr, Mid$ usw.). Bei
reinen Textdateien diese nicht in Word mittels Documnets.Open öffnen
sondern, direkt mit der Open-Anweisung einlesen.



Thomas Gahler
MVP für WordVBA
Co-Autor von »Microsoft Word-Programmierung.
Das Handbuch« (MS Press)


- Windows XP (SP2), Office XP (SP3)

Ähnliche fragen