Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

How To... Groß- oder Kleinbuchstaben mit VBS und nach Zeichen oder Woertern suchen

Tipp Entwicklung

Mitglied: TsukiSan

TsukiSan (Level 2) - Jetzt verbinden

05.07.2009, aktualisiert 11:17 Uhr, 11386 Aufrufe, 13 Kommentare

Dieser Tipp könnte denen hilfreich sein, die immer mal in bestimmten Dateien nach Zeichen (Buchstaben) suchen und
wissen möchten, ob die existieren .

Hallo liebes Forum.

Gegeben:
1) Man(n) oder Frau auch möchten per VBS ein Wort oder Zeichen oder Buchstaben finden, der sich in einer Textdatei befinden soll.
Beispiel:
In einer Datei sind Adressen von Kunden abgelegt nach folgendem Schema:
Kopf: Name, Vorname, Telefon, Email.
Wert1: Mayer,George,0190696969,Mayer@wunschadresse.xx
Wert2: mayer,hans,0190696969,mayer@wunschadresse.xx
usw.
Wenn man jetzt mit der InStr-Funktion nach z.Bsp.: "Mayer" sucht, dann "spuckt " uns das "Ding" nur einen Eintrag aus.
Wir möchten aber in der (eventuell so benannaten) Suchspalte nicht immer auf solche Kleinigkeiten achten, ob der Name nun mit einen Groß- oder Kleinbuchstaben anfängt.
Also könnte unser Script so aussehen
01.
SuchChar = Inputbox("Bitte Namen eingeben") 
02.
'..... Datei öffnen und zeilenweise einlesen 
03.
SuchText = 'ganze Zeile von Datei' 
04.
'.....dann den ganzen String prüfen 
05.
        TextPos = InStr(SuchText, SuchChar) 
06.
        ' Groß/Kleinschreibung egal nur am Anfang des Suchbegriffes!!!!! 
07.
        If TextPos = "0" Then 
08.
            SuchCharTemp = Chr(32 Xor Asc(SuchChar)) & Mid(SuchChar, 2, Len(SuchChar)) 
09.
            TextPos = InStr(SuchText, SuchCharTemp) 
10.
        End If 
11.
        If TextPos <> "0" Then 
12.
            Wscript.Echo  "Herr/Frau" & SuchChar & " wurde gefunden." 
13.
        End If 
14.
 
15.
'....und wieder von vorn, bis die Datei komplett bis zum Ende ausgelesen und geprüft worden ist
Die Variable "TextPos" gibt beim Auffinden des eingebenen Suchbegriffes uns die Position an, an welcher Stelle sie diese "Übereinstimmung" findet. Bei "Mayer" wäre dies ("Wert1: Mayer....") die 8te Stelle.

Dieses Schnipsel funktioniert bestens bei Buchstaben. Bei Zahlen und Sonderzeichen macht es keinen Sinn, weil
da gibt es diese Groß-/Kleinschreibung ja nicht!

Wie gesagt/geschrieben, dies soll helfen nach Wörten oder Buchstaben zu suchen, bei denen es egal ist ob sie groß oder klein anfangen.

Gruß
Tsuki
Ps.: man kann damit auch nach Dateien in einem Ordner suchen lassen, z.Bsp.: die MP3-Sammlung nach Liedern durchsuchen, ob man diese schon hat oder nicht. Aber das vielleicht beim nächsten Mal
PSS.: Etwaige Zusammenhänge mit obig aufgeführten Personen sind rein zufällig und sind niemals nicht beabsichtigt!
Mitglied: 80220
05.07.2009 um 12:40 Uhr
Ist dir findstr bekannt? Das Konsolentool ist Bestandteil von z. B. Windows XP.
Es gibt immer komplizierte Lösungen. Warum einfach, wenn es auch umständlich geht
Bitte warten ..
Mitglied: TsukiSan
05.07.2009 um 12:44 Uhr
Hi dumdideldum,

mir ist es bekannt. Aber wenn du ein paar viele Anfragen zurückschaust, wirst du feststellen, daß viele alles mit entweder batch oder vbs selber kreieren möchten. Und für diese Mitmenschen habe ich mich am Sonntag hingesetzt, um ihnen etwas Anregungen zu geben, wie man selber batchen/scripten kann. Dann weiß man nachher wenigstens, wem man die Schuld bei PC-Versagen geben kann

Dir auch einen schönen Sonntag
Tsuki
Bitte warten ..
Mitglied: 80220
05.07.2009 um 12:49 Uhr
Hi,

Wenn ich ein paar viele Anfragen zurückschaue, stelle ich nur fest, dass bei den meisten Fragestellern entweder die Suchfunktion defekt ist oder sie nicht in der Lage sind, passende Suchbegriffe einzugeben bzw. sie sich keine Mühe geben. Lösungen zu dem von dir im Tipp geposteten "Problemchen" gibt es satt, auch hier im Forum.
Zu möglichen Problemen mit vbs-Scripten sage ich diesmal nichts.

Gruß
dumdideldum
Bitte warten ..
Mitglied: 76109
05.07.2009 um 14:42 Uhr
Hallo TsukiSan!

Sei mir bitte nicht böse, aber Dein Geschnipsel ist Blödsinn

Die Funktion InStr beinhaltet bereits einen Textvergleich, in dem zwischen Groß/Kleinschreibung NICHT unterschieden wird:
01.
Pos = InStr(Startposition, String1, String2, vbTextCompare)

Gruß Dieter

[edit] hatte die Startposition vergessen und diese auf Anregung von TsukiSan noch hinzugefügt [/edit]
Bitte warten ..
Mitglied: TsukiSan
05.07.2009 um 14:55 Uhr
Hallo Dieter,

danke dir für die konstruktive Kritik!
Aber nimm bitte auch meine hin, daß dein Schnipsel auch Blödsinn ist und nicht funktioniert, außer mit Fehlermeldung
du müßtest dann schon die Stelle angeben, ab wo eingelesen werden soll.
Beispiel:
01.
Pos = InStr(1,String1, String2, vbTextCompare)
Dann würde es auch was werden

Trotzdem Danke!
Ich möchte denen, die es interessiert einfach nur eine Anregung geben, sich mit scripting auseinander zusetzen.

Gruß
Tsuki
Bitte warten ..
Mitglied: 76109
05.07.2009 um 15:03 Uhr
Hallo TsukiSan!

Du hast recht, ich war etwas verwirrt und habe leider vergessen, dass die Startposition mit angegeben werden muss

Gruß Dieter
Bitte warten ..
Mitglied: TsukiSan
05.07.2009 um 15:07 Uhr
Hallo Dieter,

ist doch kein Problem.
So macht lernen doch wieder Spaß

Viele Grüße
Tsuki
Bitte warten ..
Mitglied: 80220
05.07.2009 um 15:18 Uhr
Zitat von TsukiSan:
Ich möchte denen, die es interessiert einfach nur eine Anregung geben, sich mit scripting auseinander zusetzen.

Ich auch:
http://www.tecchannel.de/sicherheit/spam/401881/sicher_im_web_unterwegs ...

Besonders den letzten Satz im verlinkten Artikel sollte man sich gut merken!

Und da es mit (vsb- und wsh-)Scripten möglich ist, Schweinereien auszuführen und das auch noch unsichtbar, rate ich von der unnötigen Verwendung von Scripten ab, wenn es andere Lösungen gibt.
Bitte warten ..
Mitglied: TsukiSan
05.07.2009 um 15:28 Uhr
@80220

ich weiß nicht, aber irgendwie kommentierst du am Thema vorbei oder mein IE geht auf die falsche Seite beim Anklicken deines Links.
Was hat mein "Schnipsel" mit Zertifizierung zu tun?
Sehen wir in meinem Beispiel irgendein Risiko für Mensch und Maschine?
Sorry, aber kann da nicht folgen.

Bitte konstruktive Kritik!

Gruß
Tsuki
Bitte warten ..
Mitglied: 80220
05.07.2009 um 15:33 Uhr
Zitat von TsukiSan:
Sorry, aber kann da nicht folgen.

Das ist an deinen Kommentaren deutlich zu merken. Aber das ist dein Problem.
Vielleicht solltest du etwas weniger posten und dafür etwas öfter nachdenken.
Bitte warten ..
Mitglied: TsukiSan
05.07.2009 um 15:36 Uhr
Zitat von 80220:
Das ist an deinen Kommentaren deutlich zu merken. Aber das ist dein
Problem.
Vielleicht solltest du etwas weniger posten und dafür etwas
öfter nachdenken.



Ok, ich denke nach, bewerbe mich als Versicherungsmakler und verkaufe dir "Sicherheit" Dann werde ich reich
Bitte warten ..
Mitglied: TsukiSan
05.07.2009 um 17:18 Uhr
@dumdideldumm
bevor ich dir Versicherungspolicen verkaufe - was ein leichtes scheint! - möchte ich dich lieber dazu anregen, etwas zum Thema beizutragen.
Du weißt sicherlich, was "Klassen" und "Objekte" sind.
Wie würdest du mein script-Schnipsel in solches verfassen?
Wir reden hier über VBS-scripting. Eine Ahnung, wie man sich Klassen oder Objekte in VBS erstellt? Gib mal ein Beispiel!
Nein? Hier ist nur eines davon.
Und keine Frage! Ich verstehe es!
Schon jemals was eigenes programmiert?
Nein?
Was zum lesen, verstehen, umsetzen!

Gruß
Tsuki
Bitte warten ..
Mitglied: 80220
05.07.2009 um 18:16 Uhr
Du verstehst nichts.
Das Thema ist für mich beendet.
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Ähnliche Inhalte
Batch & Shell
Powershell - In Textdatei suchen und ersetzen (1)

Frage von Raaja89 zum Thema Batch & Shell ...

Batch & Shell
Eventlog Druckjobs mit VBS auslesen (2)

Frage von joni2000de zum Thema Batch & Shell ...

VB for Applications
VBS Script zum versenden mehrerer Verknüpfungen zu Dateien per Lotus Notes

Frage von Sentinel87 zum Thema VB for Applications ...

PHP
How to write phpinfo with special character to file (11)

Frage von thankusomuch zum Thema PHP ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

Frage von M.Marz zum Thema Windows Server ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Router & Routing
gelöst Empfehlung günstiges ADSL2+ nur Modem (10)

Frage von TimMayer zum Thema Router & Routing ...

Server-Hardware
Lenovo Server System X 3650 M5 Festplatten (9)

Frage von Hendrik2586 zum Thema Server-Hardware ...