[elektro] PIC, Csavarhuzo reset

Kovács József kj at faldeko.hu
Sun Jul 10 22:35:31 CEST 2011


regexp lesz az és nem regex

Legsimább ügy a Notepad++ használata
(vagy Microsft Word 2003 és az újabb verziók)
Ezek ugyanis tudnak regexp alapú csere műveletet is...

Notepad++ letölthető innen, ráadásul magyarul is tud és PORTABLE
http://sourceforge.net/projects/portableapps/files/Notepad%2B%2B%20Portable/Additional%20Versions/NotepadPlusPlusPortable_5.9.2.paf.exe/download


Vagy írsz Visual BASIC Script kódot pár sorban...
(windows scripting kezeli alapból a VBS és a JS scripteket)
Mivel a windows egy totálisan scriptelhető oprendszer :-)
ill. az összes MS office alkalmazás is, nomeg a CorelDraW, Autocad, stb
Ezek mind értenek Visual BASIC-ül...

A VB script nagyjából így fog kinézni (lásd a végén)
A szükséges teljes regexp-t majd megalkotod hozzá.
ill. az elérési utakat cseréled értelem szerűen.
Persze használhatod a a file kiválasztásra/megadásra a windows
saját objketumokat is a scriptből, csak ahhoz most nem volt erőm.

Ird ezt be pl.  egy proba.vbs nevű sima szöveg fájlba
Aztán dupla katt rá és lőn csoda...

'------------------------------------

forras = "c:\forraskod.txt"
cel ="C:\celkod.txt"

set myregexp = new regexp
'myregexp.Pattern = "^\/\/*[\r\n]|$"

myregexp.Pattern = "^\/\/(.*)$"


myregexp.IgnoreCase = True
myregexp.Global = True

set fso = createobject("scripting.filesystemobject")


if fso.fileexists(forras) then

if fso.fileexists(cel) then fso.deletefile(cel)

	if not fso.fileexists(cel) then
	
		set celfajl = fso.createtextfile(cel, true)

		set forfajl = fso.opentextfile(forras, 1)
			do while not forfajl.atendofstream
				aktsor=forfajl.readline()
				aktsor=myregexp.replace(aktsor, "")
				celfajl.writeline(aktsor)
			loop

		celfajl.close() 		
		set celfajl = nothing 	
	
		forfajl.close()
		set forfajl = nothing

	else

		msgbox( "Már létezik a cél fájl!")	

	end if


else

	msgbox("Nem található a forrás fájl.")

end if

set fso = nothing

WScript.Echo "Script END OK"

'------------------------------



More information about the Elektro mailing list