ABOUT Visual Basic Programmieren Programmierung Download Downloads Tips & Tricks Tipps & Tricks Know-How Praxis VB VBA Visual Basic for Applications VBS VBScript Scripting Windows ActiveX COM OLE API ComputerPC Microsoft Office Microsoft Office 97 Office 2000 Access Word Winword Excel Outlook Addins ASP Active Server Pages COMAddIns ActiveX-Controls OCX UserControl UserDocument Komponenten DLL EXE
Diese Seite wurde zuletzt aktualisiert am 12.09.2001

Diese Seite wurde zuletzt aktualisiert am 12.09.2001
Aktuell im ABOUT Visual Basic-MagazinGrundlagenwissen und TechnologienKnow How, Tipps und Tricks rund um Visual BasicActiveX-Komponenten, Controls, Klassen und mehr...AddIns für die Visual Basic-IDE und die VBA-IDEVBA-Programmierung in MS-Office und anderen AnwendungenScripting-Praxis für den Windows Scripting Host und das Scripting-ControlTools, Komponenten und Dienstleistungen des MarktesRessourcen für Programmierer (Bücher, Job-Börse)Dies&Das...

Themen und Stichwörter im ABOUT Visual Basic-Magazin
Code, Beispiele, Komponenten, Tools im Überblick, Shareware, Freeware
Ihre Service-Seite, Termine, Job-Börse
Melden Sie sich an, um in den vollen Genuss des ABOUT Visual Basic-Magazins zu kommen!
Informationen zum ABOUT Visual Basic-Magazin, Kontakt und Impressum

Zurück...

Maskenfilter

Zurück...


Anzeige

(-hg) mailto:hg_replacemasked@aboutvb.de

Eine andere Art und Weise der Ersetzung von Zeichen bzw. Teil-Strings in einem String stellt die folgende Funktion ReplaceMasked dar. Sie ersetzt alle Zeichen, die sich zwischen den Vorkommen eines gegebenen Teil- bzw. Trenn-Strings befinden, durch ein festes anderes, vorgegebenes Zeichen. So würden etwa in einem Datums-String alle Ziffern durch eine Null ersetzt, während die trennenden Punkte erhalten blieben.

In der Funktion wird zunächst ein neuer String (gleich als Rückgabewert) angelegt, der bei gleicher Länge wie der übergebenen String (Str) nur aus Maskierungszeichen (Mask) besteht. An den Positionen der Vorkommen des Trenn-Strings (Separator) werden im Rückgabe-String die entsprechenden Masken-Zeichen durch den Trenn-String ersetzt.

Public Function ReplaceMasked(Str As String, Mask As String, _
 Separator As String) As String

  Dim nPos As Long
  Dim nStart As Long
  Dim nLenSeparator As Long
  
  ReplaceMasked = String$(Len(Str), Mask)
  nLenSeparator = Len(Separator)
  nStart = 1
  Do
    nPos = InStr(nStart, Str, Separator)
    If nPos Then
      Mid$(ReplaceMasked, nPos) = Separator
      nStart = nPos + nLenSeparator
    End If
  Loop While nPos
End Function

Nach dem gleichen Prinzip ersetzt die folgende Funktion FilterMasked alle Zeichen aus dem übergebenen String (Str), die nicht zu einem in Matches übergebenen Array von Strings enthalten sind, durch ein Maskierungszeichen. Umgekehrt gesagt: Die Funktion gibt einen String zurück, der an den entsprechenden Positionen nur noch Teil-Strings enthält, die in Matches in einem Array übergeben worden sind.

Public Function FilterMasked(Str As String, Matches As Variant, _
 Optional Mask As String = " ") As String

  Dim nPos As Long
  Dim nStart As Long
  Dim nSeparator As String
  Dim nLenSeparator As Long
  Dim l As Long
  
  FilterMasked = String$(Len(Str), nMask)
  For l = LBound(Matches) To UBound(Matches)
    nSeparator = Matches(l)
    nLenSeparator = Len(nSeparator)
    nStart = 1
    Do
      nPos = InStr(nStart, Str, nSeparator)
      If nPos Then
        Mid$(FilterMasked, nPos) = nSeparator
        nStart = nPos + nLenSeparator
      End If
    Loop While nPos
  Next 'l
End Function

Modul modReplaceMasked (modReplaceMasked.bas - ca. 1,4 KB)


Artikel
Zum Download-Bereich dieses Artikel
Mail an den Autor dieses Artikels

KnowHow
Zur KnowHow-Übersicht

KnowHow-Themen
Themen - Allgemeines
Themen - Entwicklungsumgebung (VB-IDE)
Themen - Forms
Themen - Steuerelemente (Controls)
Themen - Grafik
Themen - Dateien
Themen - UserControls
Themen - Einsteiger-Tipps
Themen - Wussten Sie...?

Übersicht nach Titeln in alphabetischer Reihenfolge
Übersicht nach Erscheinungsdatum

Schnellsuche




Zum Seitenanfang

Copyright © 1999 - 2017 Harald M. Genauck, ip-pro gmbh  /  Impressum

Zum Seitenanfang

Zurück...

Zurück...

Download Internet Explorer