- Netfone
- iPhone topik
- Nem növel telepméretet a Galaxy S26 Ultra
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Fotók, videók mobillal
- Samsung Galaxy Watch6 Classic - tekerd!
- Motorola Edge 50 Neo - az egyensúly gyengesége
- Poco X3 Pro - hardverfrissítés
- Milyen okostelefont vegyek?
- Bemutatkozott a Poco X7 és X7 Pro
Új hozzászólás Aktív témák
-
Jester01
veterán
-
Jester01
veterán
válasz
stargazer #61 üzenetére
Azért törölte ki az F4500-at, mert már volt egy F. előtte (konkrétan a fájlnévben).
Mivel nem tiszta hogyan ismerjem fel az F-eket, ezért itt éppen olyan feltétel volt, hogy F betű utána számok, pont vagy mínuszjel. Most ebből kihagytam a pontot, így erre az esetre most megint jónak tűnik. Ha egyszer végre leírnád pontosan hogy mit, hol és mire kell cserélni biztos jobb lenne
A fájlos kérdésed meg egyszerűen nem értem -
stargazer
senior tag
elküldtem
meg lehet azt csinálni hogy ha én csinálok egy bat file-t a dolog futtatása végett, akkor valami dzsoli karakterekkel dolgozzon, hogy ne kelljen minden alkalommal átnevezni a file-t vagy átírni a bat-ot hogy pont arra a file-névre csinálja meg?
csináltam egy könyvtárat, amibe mindig átmásolnám a mawkozni kivánt lst-t, és egy battal csak ráinditanék, és az a bat minden (igazábol csak egy) a kvtarban levő lst-re megcsinálná, függetlenül az lst file nevétöl. ezt meg lehet csinálni?
németben voltam azér csak most irok. -
Jester01
veterán
válasz
stargazer #56 üzenetére
Felraktam az általam használt bemenetet ide: [link]
Kipróbáltam win alatt is, ott is jó. Megnéznéd, hogy neked erre mit csinál, illetve mi a különbség a te adataidhoz képest?
nem lehet gond hogy nem txt a kiterjesztés, mert ez nem egy specifikus kiterjesztés, sima szöveg ez is csak annyi hogy nem
Az mindegy, hiszen az átirányítás miatt az awk nem is látja a fájlt, õ simán csak a bemenetérõl olvas. -
stargazer
senior tag
igen az a bemenet pontosan. minusz a megjegyzések. most ez gyakorlatilag megint csak egy részlet, nem is tudnám az egészet ide beilleszteni de a lényeg benne van, tehát ebböl tudsz mindent hogy milyen kifejezések fordulhatnak elő. nem hiszem hogy okosabb vagy ha ugyanilyeneket beszúrok még 50 oldalnyit, tehát ez nem lehet gond. nálam kitörli az F4500-at, pedig a teljes szövegben első helyen fordul elő. F-érték nem soronként ismétlődő érték, hanem jó sok sor szokott két F-érték közt lenni. nem lehet gond hogy nem txt a kiterjesztés, mert ez nem egy specifikus kiterjesztés, sima szöveg ez is csak annyi hogy nem txt.
-
stargazer
senior tag
elnézésedet kérem, de indokolt volt hogy ne mindjárt a konkrétumokkal álljak elő. a dolog első osztályú kivéve egy apróságot, hogy szövegben található legelső F-értéket is kitörölte (F4500). nagyon hálás vagyok a segítségedért, elég fontos nekem ez a dolog. nem vagyok egy gazdag ember, de ha megadod a bankszámlaszámodat, szivesen átutalok neked egy aprócska összeget a fáradtságaidért.
-
stargazer
senior tag
ez a végleges. kénytelen voltam ködösíteni de nem tudom úgy megoldani, hiába helyettesítettem be az A-t és a B-t X-re és Y-ra.
in:
:0190(szöveg)
(szöveg)
G0
G21
G61
G90
X690.Y135.F4500
M0
M80
T03
M06
X791.00Y500.5F3564C90.M25 (állhat így is hogy egy F zárja le az Y-értéket)
X840.09Y500.5C90.M25 (állhat így is hogy egy C zárja le az Y-értéket)
X889.19Y500.5M25 (állhat így is hogy egy M zárja le az Y-értéket)
X938.28Y500.5 (és állhat így is hogy nincs mögötte semmi)
X987.38Y500.5
X1263.5Y57.54
X1263.5Y109.08
X1263.5Y160.62
X1263.5Y212.16
X1263.5Y263.69
X791.00Y500.5
X840.09Y500.5
X889.19Y500.5
X938.28Y500.5
X987.38Y500.5
X1263.5Y57.54
X1263.5Y109.08
X1263.5Y160.62
X1263.5Y212.16
X1263.5Y263.69
M20
X690.Y135.
C359.99
M30
%
Minden M80-at cseréljen ki M81-re, Minden F-értéket töröljön ki a szövegből, kivéve az elsőt és az F1000-et, törölje ki az ugyanolyan X- és Y-értékeket, amik egymás utáni utáni sorokban megtalálhatóak kivéve ezek első sorát (ami már megvolt és faszán működött is csak még egyszer a teljesség kedvéért megemlítem mintegy magamnak)
out:
(az áttekinthetőség kedvéért space-eket hagytam azoknak a kifejezéseknek a helyén amiket törölni kell, természetesen oda nem kellenek space-ek, egyszerűen elég ha csak ki vannak törölve.)
:0190(szöveg)
(szöveg)
G0
G21
G61
G90
X690.Y135.F4500
M0
M81
T03
M06
X791.00Y500.5 C90.M25
X840.09 C90.M25
X889.19 M25
X938.28
X987.38
X1263.5Y57.54
Y109.08
Y160.62
Y212.16
Y263.69
X791.00Y500.5
X840.09
X889.19
X938.28
X987.38
X1263.5Y57.54
Y109.08
Y160.62
Y212.16
Y263.69
M20
X690.Y135.
C359.99
M30
%
jó látom a space-eket nem teszi bele.
[Szerkesztve] -
Jester01
veterán
Újabb változat a linken.
-
Jester01
veterán
Én most eltûntem a hétvégére, folyt. köv.
-
Jester01
veterán
-
stargazer
senior tag
cannot open out.txt no such file or directory
ha csinálok akkor lefut no problemo csak nem történik semmi, tehát nem jön létre az uj file illetve nem írja bele a változásokat.
nagyon fasza a végkimenetel különben amit láttam csak még annyit kéne tenni vele, hogy azokat a kifejezéseket amik még egyébként megtalálhatóak a szövegben de nincs előttük sem A sem B azokat ugyanúgy tegye bele a kimenti file-ba anélkül hogy hozzájuk nyúlna. -
Jester01
veterán
válasz
stargazer #34 üzenetére
ki fogsz nyírni.
Az tuti
Na szóval:
AalmaBkorte - (nincs csere) -> AalmaBkorte
AalmaBkorte - (alma csere) -> csereszoBkorte
AalmaBkorte - (korte csere) -> Aalmacsereszo
Ez kell?
MOD: ha egy AalmaBkorte sor utan van egy AkorteBalma akkor mit kell csinálni? Most ebben az esetben mind a kettõt cserélem (hiszen szerepeltek az elõzõ sorban) és akkor az új rendszer szerint csereszocsereszo lesz a kimenet.
[Szerkesztve] -
Jester01
veterán
válasz
stargazer #32 üzenetére
BEGIN { FS=''[AB]''; }
{
delete newwords;
swap=0;
for(i=2; i<=NF; i++)
{
newwords[$i]=1;
if ($i in prevwords) { $i=''csereszo''; swap=1; }
}
delete prevwords;
for(w in newwords) { prevwords[w]=1; }
if (swap)
{
print $2 ''B'' $3;
} else {
print;
}
}
A linken is frissítettem. Ez most kitörli a sor elejéról az A-t ha csere van, de a B marad. Azok a sorok amelyekben nem vol csere változatlan formában kerülnek kiírásra. -
Jester01
veterán
válasz
stargazer #23 üzenetére
Vesszek meg, de nem látom. Most az utolsó 4 sort idézted be, nem? A közvetlenül elõtte lévõ sorban (amit nem idéztél) pedig ott van az alma és nem lett kicserélve.
MOD: vagy az a baj, hogy az idézett rész elsõ sorában az alma a második szó és nem az elsõ? Azt nem mondtad, hogy a pozició is számít...
[Szerkesztve] -
Jester01
veterán
válasz
stargazer #21 üzenetére
BEGIN { FS=''[AB]''; }
{
delete newwords;
for(i=2; i<=NF; i++)
{
newwords[$i]=1;
if ($i in prevwords) { $i=''csereszo''; }
}
delete prevwords;
for(w in newwords) { prevwords[w]=1; }
print ''A'' $2 ''B'' $3;
}
Futási eredmény (be -> ki):
AalmaBkörte -> AalmaBkörte
AcseresznyeBeper -> AcseresznyeBeper
AdióBmogyoró -> AdióBmogyoró
AalmaBeper -> AalmaBeper
AalmaBdió -> AcsereszoBdió
AalmaBkörte -> AcsereszoBkörte
AalmaBmeggy -> AcsereszoBmeggy
AcseresznyeBmeggy -> AcseresznyeBcsereszo
AalmaBkörte -> AalmaBkörte
AcseresznyeBeper -> AcseresznyeBeper
AdióBmogyoró -> AdióBmogyoró
AalmaBeper -> AalmaBeper
AdióBalma -> AdióBcsereszo
AalmaBkörte -> AcsereszoBkörte
AalmaBmeggy -> AcsereszoBmeggy
AcseresznyeBdió -> AcseresznyeBdió -
stargazer
senior tag
feltétlenül ismerni kell az ismétlődő szavakat? nem létezik olyanmódszer ami karakterláncokat képes összeegyeztetni? mittudomén megnézni az első karaktert. ha stimmel továbbugrik egyet, ha az is stimmel, akkor... ja ez nem is jó mert akkor esetleg előfordulhat hogy nem teljes kifejezéseket fog cserélni hanem azok egy részét csupán.
annyit tudok esetleg tenni hogy a kifejezések mindig nagy A-val és nagy B-vel kezdődjenek. fontos lehet, hogy minden mondatban mindig csak 2 kifejezés található.
.
.
.
AalmaBkörte
AcseresznyeBeper
AdióBmogyoró (tehát idáig mindenféle szabályszerűség nélkül vegyesen mindenféle kifejezés)
AalmaBeper (innentöl viszont pár soron keresztül minden sorban szerepel az alma kifejezés...)
AalmaBdió
AalmaBkörte
AalmaBmeggy (...egész idáig)
AcseresznyeBdió (innentöl megint vegyesen mindenféle...)
.
.
.
AalmaBkörte
AcseresznyeBeper
AdióBmogyoró (...idáig)
AalmaBeper (innentöl megint pár soron keresztül minden sorban szerepel az alma...)
AalmaBdió
AalmaBkörte
AalmaBmeggy (...idáig)
AcseresznyeBdió (innentöl megint vegyesen mindenféle)
.
.
. -
Jester01
veterán
-
stargazer
senior tag
-
stargazer
senior tag
és ez az awk script lefut xp alatt is? kell hozzá valami? ha igen, mi?
-
Jester01
veterán
A következõ kis awk script 1 mintára azt hiszem megcsinálja amit szeretnél:
/alma/ {
if (alma) gsub(/alma/, ''csereszo''); else alma=1;
print; next; }
{ alma=0; print; } -
stargazer
senior tag
így lenne:
vannak mondatok
.
.
.
alma körte meggy
cseresznye eper
dió mogyoró (tehát idáig mindenféle szabályszerűség nélkül vegyesen mindenféle kifejezés)
alma eper (innentöl viszont pár soron keresztül minden sorban szerepel az alma kifejezés...)
alma dió
alma körte
alma meggy (...egész idáig)
cseresznye dió (innentöl megint vegyesen mindenféle...)
.
.
.
alma körte meggy
cseresznye eper
dió mogyoró (...idáig)
alma eper (innentöl megint pár soron keresztül minden sorban szerepel az alma...)
alma dió
alma körte
alma meggy (...idáig)
cseresznye dió (innentöl megint vegyesen mindenféle)
.
.
.
namost a cél az lenne hogy ugy cserélni az alma kifejezést, hogy így alakuljon a szöveg:
.
.
.
alma körte meggy
cseresznye eper
dió mogyoró
alma eper
<csereszó> dió
<csereszó> körte
<csereszó> meggy
cseresznye dió
.
.
.
alma körte meggy
cseresznye eper
dió mogyoró
alma eper
<csereszó> dió
<csereszó> körte
<csereszó> meggy
cseresznye dió
.
.
.
tehát az a cél, hogy keresse meg, hogy melyik kifejezés található meg egymás utáni sorokban, és azokat ugy cserélgesse ki a csereszóra, hogy az első sort ''egy tömbön belül'' ne piszkálja.
jól látszik a példában és fontos, hogy amikor másodszor is előkerült az ismétlődés a szöveg egy későbbi részében, ott az első sorban nem szabad hogy cserére kerüljön sor. -
Jester01
veterán
Mutass egy példát!
alma korte dio
mogyoro mak alma
tok dio korte
mak alma szilva
Ehhez 1 kifejezést adsz, ami mondjuk alma.
Akkor a kimenet ez legyen?
alma korte dio
mogyoro mak
tok dio korte
mak alma szilva
Vagyis a második sorból kell törölni az alma-t mert az elsõben is benne volt -
stargazer
senior tag
up
-
stargazer
senior tag
olyat szeretnék kérdezni, hogy mivel tudom szerintetek megoldani, hogy egy txt-ben sok ugyanolyan kifejezés közül törölje ki azokat amik egymás utáni sorokban találhatóak, kivéve azt ami az első sorban van. és csak úgy törölje ki hogy egy tömbként kezelje azokat az egymás után következő sorokat amelyekben ugyanaz a kifejezés megtalálható.
Új hozzászólás Aktív témák
Hirdetés
- Mibe tegyem a megtakarításaimat?
- Renault, Dacia topik
- Témázgatunk, témázgatunk!? ... avagy mutasd az Android homescreened!
- Milyen TV-t vegyek?
- One otthoni szolgáltatások (TV, internet, telefon)
- Xbox Classic / Xbox 360
- NVIDIA GeForce RTX 3080 / 3090 / Ti (GA102)
- Netfone
- Melyik tápegységet vegyem?
- OLED TV topic
- További aktív témák...
- Bitdefender Total Security 3év/3eszköz! - Tökéletes védelem, Most kedvező áron!
- Számlás!Steam,EA,Epic és egyébb játékok Pc-re vagy XBox!
- Eladó steam/ubisoft/EA/stb. kulcsok Bank/Revolut/Wise (EUR, USD, crypto OK)
- 27%-OS ÁFÁS SZÁMLA I Jogtiszta Microsoft digitális és fizikai termékek I DIGITALKEYZ.COM
- Assassin's Creed Shadows Collector's Edition PC
- Microsoft Surface Pro 7 - Újszerű, dobozban, gyári töltővel, billentyűzettel
- Telefon felvásárlás!! iPhone 13 Mini/iPhone 13/iPhone 13 Pro/iPhone 13 Pro Max
- Apple iPhone 13 128GB, Kártyafüggetlen, 1 Év Garanciával
- Honor Magic 7 Pro - Fekete - Új kipróbált készülék! Karcmentes gyárilag független! 512GB Memória!
- BESZÁMÍTÁS! Asus B760M i7 12700KF 32GB DDR4 512GB SSD RX 6800 16GB Rampage SHIVA FSP 700W
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Promenade Publishing House Kft.
Város: Budapest