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
GELÖST

Einzelnes Zeichen in einem String, an einer bestimmten Stelle tauschen

Frage Entwicklung VB for Applications

Mitglied: captainchaos666

captainchaos666 (Level 1) - Jetzt verbinden

11.02.2007, aktualisiert 17:11 Uhr, 14749 Aufrufe, 6 Kommentare

Hallo VB-Spezialisten,

könnt Ihr mir weiterhelfen, ich habe zwei Strings

StringA = xxxx-xxxx-xxxx-xxxx
StringB = xxxx-xxxx-xxEx-xxxx

ich möchte nun das das "E" in den StringA übernommen wird, wie kann ich eine einzelnes Zeichen aus einem String in einen anderen Kopieren. Der Buchstabe "E" ist nicht fest es können auch andere Zeichen sein. Es soll nur das Zeichen an der 13'ten Stelle von StringB in StringA Kopiert werden. Die anderen Zeichen müssen erhalten bleiben.

so soll's mal aussehen

StringA = xxxx-xxxx-xxEx-xxxx


Dank euch!


Gruß Alex
Mitglied: DaSam
11.02.2007 um 15:11 Uhr
Heppa:

01.
sStr = "xxxx-xxxx-xxxx-xxxx-xxxx" 
02.
wscript.echo ReplChar(sStr, "*", 13) 
03.
 
04.
 
05.
function ReplChar (sStr, newChar, nPos) 
06.
ReplChar = left(sStr, nPos-1) & newChar & right(sStr, len(sStr)-nPos) 
07.
end function 
08.
 
Code ist allerdings ohne irendwelche Überprüfungen, ob die Position z.B. auch innerhalb der Zeichenkette liegt ...

cu,
Alex
Bitte warten ..
Mitglied: captainchaos666
11.02.2007 um 15:30 Uhr
Hallo Alex,
Dank Dir
Bitte warten ..
Mitglied: bastla
11.02.2007 um 16:47 Uhr
Hallo captainchaos666!

Als Nachtrag: Sofern Du nicht VBScript (sondern etwa VBA) verwendest, gäbe es genau für diesen Zweck die Funktion / Anweisung "Mid()":
01.
Mid(strA, 13, 1) = Mid(strB, 13, 1)
Grüße
bastla
Bitte warten ..
Mitglied: Biber
11.02.2007 um 16:58 Uhr
@bastla
Mid(strA, 13, 1) = Mid(strB, 13, 1)
Sicher? Ich meine den linken Teil...
StrA=Mid(strA,1,12) + Mid(StrB,13,1) + Mid(StrA,14)
....fände ich einleuchtender.
Würde mich wundern, wenn sich mit Left()/Right()/Mid auch PEEKen und POKEn liesse...*gg
Und wenn, geht dann auch ein.... ?
UCase(strA) = LCase(strB)


SCNR
Biber
Bitte warten ..
Mitglied: DaSam
11.02.2007 um 17:08 Uhr
@Biber:

dachte zuerst auch, dass man eine Zuweisung mittels mid() machen kann - ich habe schwer im Hinterkopf, dass das bei irgendeiner BASIC-Ausprägung mal ging ...

In 'C' wäre es ja ohnehin wesentlich "eleganter"

cu,
Alex
Bitte warten ..
Mitglied: bastla
11.02.2007 um 17:11 Uhr
@Biber

> Mid(strA, 13, 1) = Mid(strB, 13, 1)
Sicher? Ich meine den linken Teil...
Mit der Einschränkung auf "Nicht VBScript": ja

> StrA=Mid(strA,1,12) + Mid(StrB,13,1) + Mid(StrA,14)
....fände ich einleuchtender.
Wir Basler schreiben in solchen Fällen ja eher "&" als "+" (aber mehr aus ästhetischen Gründen - zulässig ist das "+" auch) - ansonsten kann man's so machen, wenn man viel Zeit hat (oder VBS verwenden muss) ...

Würde mich wundern, wenn sich mit Left()/Right()/Mid auch PEEKen und POKEn liesse...*gg
"Left()" und "Right()" kann ich von einem diesbezüglichen Verdacht frei sprechen ...
Was "Mid()" angeht: Auf einen String bezogen ist es das ja eigentlich auch (hinsichtlich Speicher müsste man wohl schon Konstruktionen mit Parameterübergabe "by Ref" oÄ strapazieren ...).

Und wenn, geht dann auch ein.... ?
> UCase(strA) = LCase(strB)
Geht - allerdings in die Binsen ...

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Neue Wissensbeiträge
Google Android

Cyanogenmod alternative Downloadquelle

(2)

Tipp von Lochkartenstanzer zum Thema Google Android ...

Batch & Shell

Batch als Dienst bei Systemstart ohne Anmeldung ausführen

(5)

Tipp von tralveller zum Thema Batch & Shell ...

Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Heiß diskutierte Inhalte
Windows 7
gelöst Lokales Adminprofil defekt (25)

Frage von Yannosch zum Thema Windows 7 ...

Server
gelöst Wie erkennen, dass nur deutsche IPs Zugang zu einer Website haben? (22)

Frage von Coreknabe zum Thema Server ...

LAN, WAN, Wireless
gelöst Statische Routen mit ISC-DHCP Server für Android Devices (22)

Frage von terminator zum Thema LAN, WAN, Wireless ...

Exchange Server
gelöst Migration Exchange 2007 zu 2013 - Public Folder teilweise weg (16)

Frage von Andy1987 zum Thema Exchange Server ...