Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Pspad neumím sesmolit regulérní výraz -jde to ?

Mám asi 1500 konfiguračních souborů workshopconfig.ini s řetězcem $OWNER_ID s různým identifikátorem -různě dlouhé číslo,různí autoři potřebuji to přeplácnout svým kratším
například $OWNER_ID 10453789. Nejsem schopný udělat regulérní výraz aby našel a změnil to číslo. Zkoušel jsem $OWNER_ID \d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d (různý počet \d) ale nefunguje. Evidentně mám mezery.

Příklad workshopconfig.ini

$ITEM_ID 1803371248

$OWNER_ID 76561197992713857

$ITEM_TYPE WORKSHOP_ITEMTYPE_VEHICLESKIN

$VISIBILITY 2
$TARGET_OBJECT_SKIN personal_s1000 material.mtl

$ITEM_NAME "Skoda 1000 MB - Deep Blue"
 
$ITEM_DESC "A new victim emerges from the paintshop: the Skoda S1000! This one is wearing the downright lovely deep blue as seen on the museum car that pops up if you google the S1000."
 
$END

Změna předmětu, původně: Pspad -jde to ? (aa)

Poznámka - jde o legálně koupenou hru a potřebuji u stáhlých vylepšení změnit autora abych je mohl překopírovat do jiné složky hry. Tím je budu mít napořád stejné. Mody natáhnuté přes "odběr" občas autor smaže nebo upraví tím mi naruší hru (zmizí budovy např).

Předmět Autor Datum
\$OWNER_ID \d+ nahradit za $OWNER_ID 1234567890 Dolar se musí escapovat, protože je to řídicí znak…
brain_overflow 24.05.2021 21:08
brain_overflow
Ahoj díky za snahu. Zatím se nedaří. Zkusil jsem cvičně udělat soubor s $OWNER_ID 765 a hledat jen N…
MM_tank 24.05.2021 22:03
MM_tank
Ty robíš find in files, a ja tam nikde nevidím možnosť zvoliť regexp. Skús len obyčajný find/replace…
pozorovateľ 24.05.2021 22:19
pozorovateľ
Aha. Tak tam to funguje:-) [92998-pspad3-png]
MM_tank 24.05.2021 22:31
MM_tank
Časem to bude i v hledání v souborech. Už se na to psychicky připravuju.
Jan Fiala 25.05.2021 08:23
Jan Fiala
Aha díky Honzo takže s pspadem to nějak jednoduše neudělám. Nebo jde udělat seznam souborů a pak je…
MM_tank 25.05.2021 11:30
MM_tank
Jediné, jak by to šlo teď je složitější. Šel by použít uživatelský konvertor s regulárními výrazy a…
Jan Fiala 25.05.2021 11:47
Jan Fiala
Já bych věděl, jak na to v Matlabu (v cyklu pro všechny soubory tuto změnu dělat, byl by to skript n…
ml1 25.05.2021 13:39
ml1
Není problém to napsat ve skriptování (VBScript nebo JScript přímo v PSpadu) včetně přepsání s regul…
Jan Fiala 25.05.2021 15:11
Jan Fiala
Děkuji všem za snahu pomoct. Nakonec jsem pro zjednodušení použil "jednosouborový" jednoúčelový pro…
MM_tank 25.05.2021 16:36
MM_tank
Nepomůže přesunutí těch souborů z workšopu jinam? Také to tak u pár steamáckých her dělám (stáhnu, p… poslední
L-Core 25.05.2021 22:02
L-Core

Já bych věděl, jak na to v Matlabu (v cyklu pro všechny soubory tuto změnu dělat, byl by to skript nebo funkce na pár řádků, přičemž kostru na hledání souborů a cyklus nad nimi mám hotové pro spoustu jiných účelů, hledání regulárních výrazů umí (to používám běžně), takže i kdyby se mělo to nahrazení nějak dodělat, nebude to složité). Ale matlab předpokládám nemáte.

Není problém to napsat ve skriptování (VBScript nebo JScript přímo v PSpadu) včetně přepsání s regulárními výrazy a pustit na všechny otevřené soubory, je to taky skript na pár řádků, včetně zadání toho nahrazovaného výrazu.
Ale netuším, jestli to Karel používá častěji nebo jestli je to jednorázovka.
PSpad umí otevřít soubory pomocí wildcard, takže když dostane jako parametr c:\slozka\*.php tak otevře najednou všechny PHP ve složce.

Nepomůže přesunutí těch souborů z workšopu jinam? Také to tak u pár steamáckých her dělám (stáhnu, překopíruju jinam a klidně se odhlásím z odběru) - třeba u Cities Skylines či Haydee. S úpravou configů jsem se nikdy nepáral - ale třeba to tak u té tvé hry nejde…

Zpět do poradny Odpovědět na původní otázku Nahoru