sergio1993
Goto Top

Mit vbscript ein Wert in einer .js Datei erweitern

Guten Tag alle Administratoren

Kann mir jemand von euch helfen? Ich komme einfach nicht weiter...

Ich will mit einem vbscript die Datei all.js editieren. Und zwar möchte ich dort , diesen Wert erweitern :

pref("network.automatic-ntlm-auth.trusted-uris", "tickettracker,rss-feeds");


Dort will ich ein Script schreiben der den Wert erweitert. Ich weis es ist möglich aber ich schaff es einfach nicht.

Ich will z.B. das anstatt nur "tickettracker,rss-feeds", dass steht --> "tickettracker,rss-feeds, gx-galaxy"

Nun wie muss ich den Script aufbauen, da ich echt keine Ahnung habe. face-smile


ICh hoffe es sehr, dass ihr mir helfen könnt.


Mfg Sergio

Content-ID: 142333

Url: https://administrator.de/contentid/142333

Ausgedruckt am: 22.11.2024 um 21:11 Uhr

77559
77559 06.05.2010 um 17:25:14 Uhr
Goto Top
Zitat von @sergio1993:
Nun wie muss ich den Script aufbauen, da ich echt keine Ahnung habe. face-smile
Für die basics guckst du hier.

Gruß
LotPings
Berrnd
Berrnd 06.05.2010 um 21:21:16 Uhr
Goto Top
Zitat von @sergio1993:
Ich will z.B. das anstatt nur "tickettracker,rss-feeds", dass steht --> "tickettracker,rss-feeds, gx-galaxy"

Hi,

also das zum Beispiel würd ich mit einem einfachen Replace lösen:
NeueVar = Replace("tickettracker,rss-feeds","tickettracker,rss-feeds","tickettracker,rss-feeds, gx-galaxy")  

Gruß
Bernd

<edit>
OK, hatte mir wohl zu spät den Link vom letzten Post angesehen, stand ja da auch schon drin ;)
</edit>
sergio1993
sergio1993 07.05.2010 um 08:13:24 Uhr
Goto Top
Hallo zusammen

Ja das wusste ich schon mit dem replace.

Nur muss ich das für eine ganze Firma machen und wenn jemand da was eingetragen hat, will ich dem nicht das einfach rauslöschen, sondern nur das nötige hinzufügen.

Ich hoffe ihr könnt mir helfen.

Gruss Sergio
77559
77559 07.05.2010 um 11:57:42 Uhr
Goto Top
Dann ist deine Problembeschreibung äußerst unglücklich,

das hätte dann heissen sollen

Suche in der all.js nach Zeilen mit dem Schema
pref("network.automatic-ntlm-auth.trusted-uris", "tickettracker,rss-feeds");

und ergänze das Beispielhafte "tickettracker,rss-feeds" um den Eintrag ,gx-galaxy.

Dieses vbscript tut das, allerdings ohne zu prüfen ob der Begriff schon da ist.
Den Pfad in Zeile 9 anpassen.
' RegExReplace.vbs    
option explicit
Dim oFS, oFile
Dim FileName, sText, sNewText, SuchMuster, ErsatzZf

Const ForReading = 1
Const ForWriting = 2

FileName = "D:\Test\2010-05\all.js"  

Set oFS = CreateObject("Scripting.FileSystemObject")  
Set oFile = oFS.OpenTextFile(FileName, ForReading)

Suchmuster = "(pref\(""network.automatic-ntlm-auth.trusted-uris"")(,\s)+""(\S+)""\);"  
ErsatzZF = "$1, ""$3,gs-galaxy,Google"");"  

sText = oFile.ReadAll
oFile.Close
sNewText = Ersetze(sText, Suchmuster, ErsatzZf)

Set oFile = oFS.OpenTextFile(FileName, ForWriting)
oFile.WriteLine sNewText
oFile.Close

Function Ersetze(Text, Suchmuster, ErsatzZf)
  Dim regAusdr                                ' Variablen erstellen.  
  Set regAusdr = New RegExp                   ' Erstellt einen regulären Ausdruck.  
  regAusdr.Pattern = Suchmuster               ' Legt das Suchmuster fest.  
  regAusdr.IgnoreCase = True                  ' Ignoriert die Groß-/Kleinschreibung.  
  regAusdr.Global = True                      ' Legt globales Anwenden fest.  
  Ersetze = regAusdr.Replace(Text, ErsatzZf)  ' Führt die Ersetzung durch.  
End Function

Gruß
LotPings
Edit:das sollte wohl gx-galaxy heissen.
sergio1993
sergio1993 07.05.2010 um 13:27:43 Uhr
Goto Top
Hallo LotPings

Danke!!!!!!!!

Hab noch ne letzte Frage, und zwar möchte ich nicht nur gx-galaxy hinzufügen sondern auch z.B. Google
wie muss ich dann diesen code erweitern?

Gruss
Sergio
77559
77559 07.05.2010 um 13:42:07 Uhr
Goto Top
Hallo Sergio,

ich erwarte ja nicht, das du aus Stand Regular Expressions verstehst (das tut niemand),
aber du solltest schon in der Lage sein, im Script die einzige Stelle zu finden wo ,gx-galaxy vorkommt und da noch dein ,Google dranzuhängen.

Gruß
Lotpings
sergio1993
sergio1993 07.05.2010 um 13:47:22 Uhr
Goto Top
Hallo Lotpings

Das problem ist ich habs versucht und es hat sich nichts geändert wegen dem frage ich face-smile


Danke dir im voraus.
77559
77559 07.05.2010 um 14:21:04 Uhr
Goto Top
Hallo sergio,

ja hatte einen Fehler eingebaut der zwischen die beiden strings zusätzliches Komma Leerzeichen einbaute.

ersetze bitte Zeile 14-15 hiermit
Suchmuster = "(pref\(""network.automatic-ntlm-auth.trusted-uris"")(,\s)+""(\S+)""\);"
ErsatzZF = "$1, ""$3,gs-galaxy,Google"");"

Das sollte den Fehler korrigieren, bau ich oben auch gleich ein.

Gruß
LotPings.
sergio1993
sergio1993 07.05.2010 um 14:38:19 Uhr
Goto Top
HAllo LotPings

Vielen Dank hat geklappt face-smile