Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
|
Petz
HV Guru
liitunud: 05.11.2001
|
20.04.2012 15:37:44
search/replace abi (Notepad++ või muu) |
|
|
Ei oska ise välja nuputada, kuidas regular expressioni kasutades välja sõeluda backslash'ide vahele jääv suvalise pikkusega tekst. Võib sisaldada ka numbreid või failinimes lubatud sümboleid.
Algne tekstirida:
C:\otsitav suvaline text\failinimi.xxx
ja lõpptulemus:
failinimi.xxx
Kogu teadus siin ja ilmselt pusiks ise ka lõpuks valmis, aga ehk keegi kiirem ja osavam kuuldel...
|
|
Kommentaarid: 81 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
75 |
|
tagasi üles |
|
 |
LiivaneLord
Sõpradele "Olavi"
liitunud: 20.06.2006
|
20.04.2012 15:53:10
|
|
|
Petz, \\.*\\
Asendavaks sõneks jätad tühja välja.
Või kui tahad eemaldada ka draivi tähise, siis .*\\
|
|
Kommentaarid: 20 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
19 |
|
tagasi üles |
|
 |
Petz
HV Guru
liitunud: 05.11.2001
|
20.04.2012 16:11:11
|
|
|
Seda ma kahtlustasin, et niisama lihtne ongi...
Leidsin vahepeal mingi näite põhjal, et (\\.*)\s(.*\\) ka toimib, aga ei saanud veel aru, miks see s vahel...
Tänud!
EDIT:
tsitaat: |
Või kui tahad eemaldada ka draivi tähise, siis .*\\ |
.*\ toimib samahästi
Saan aru, et see otsib stringis viimase sümboli üles. Aga kui tahaks, et ainult esimese (või teise) backslashini selekteeriks, mida siis teha?
|
|
Kommentaarid: 81 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
75 |
|
tagasi üles |
|
 |
Dogbert
HV Guru

liitunud: 03.05.2004
|
20.04.2012 19:11:55
|
|
|
\s = [ \t\r\n\v\f] ehk tühik, tab, caret return, newline, vertical tab, form feed - tühi ruum ühesõnaga. See näide paistab olema tühikute eemaldajaks mõeldud vist. Peaks noppima ükshaaval kõik tühikud ka välja, kui asenduseks võtta sulgudesse jääv osa \1\2 või asendab tühiku mõne muu sümboliga, näiteks \1_\2
Notepad++ regexp tugi on kahjuks mittetäielik, loogilised tehted puhta puudu. OR oleks teinekord väga vajalik.
http://en.wikipedia.org/wiki/Regexp
http://regexlib.com/CheatSheet.aspx
backslash on topelt, kuna ta ise on metacharacter (metasümbol) ja tema enda leidmiseks tuleb ta topelt kirjutada.
Ainult esimese backslashini:
^.*\\
teiseni:
^.*\\.*\\
_________________ Tee inimesele lõke ja tal on soe üheks päevaks, pista ta põlema ja tal on soe elu lõpuni. (Terry Pratchett)
e.k spikker: muhk on kumer, lohk on nõgus.
viimati muutis Dogbert 20.04.2012 19:13:25, muudetud 1 kord |
|
Kommentaarid: 33 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
32 |
|
tagasi üles |
|
 |
LiivaneLord
Sõpradele "Olavi"
liitunud: 20.06.2006
|
20.04.2012 19:13:03
|
|
|
Petz, kurakaldkriips (\) tuleb asetada erisümbolite ette, et neid erisümbolitest eristada ja kasutada tavasümbolitena.
Minu jaoks on ka regulaaravaldised üsna keerulised, aga kui tahad otsingut esimeses kurakaldkriipsust enne järgmist kriipsu, siis vajad \\[^\\]*
Kui tahad, et ülejärgmise kurakaldkriipsuni, siis lisad sinna iga kriipsu jaoks \\[^\\]*
Seega \\[^\\]*\\[^\\]*
Kui tahad kolmanda kriipsuni, siis \\[^\\]*\\[^\\]*\\[^\\]* jne.
Kui tahad, et vastena kujuneks ka viimane kurakaldkriips, siis kasuta \\[^\\]*\\
PS! Kui sa kasutad kantsulge ja kirjutad sinna sümboleid, siis otsitakse ainult sinu täpsustatud sümbolit või sümboleid. Aga kui lisad sümbolite ette ^ märgi, siis otsitakse kõiki teisi sümboleid, v.a seda. Antud juhul sa ei soovi, et see läheks kurakaldkriipsudest üle ja selleks seda kasutamegi.
Saad ise lisaks uurida -> http://www.regular-expressions.info/reference.html
|
|
Kommentaarid: 20 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
19 |
|
tagasi üles |
|
 |
Dogbert
HV Guru

liitunud: 03.05.2004
|
20.04.2012 19:22:55
|
|
|
Jah, "[^\\]" on õigem kasutada kui ".*", ehk siis esimese kriipsuni oleks ^[^\\]*\\ ja teiseni ^[^\\]*\\[^\\]*\\
___________
See on eeldusel, et nopid neid välja mitte sõna algusest vaid rea algusest lugedes. ^ eraldi on rea algus $ on lõpp
_________________ Tee inimesele lõke ja tal on soe üheks päevaks, pista ta põlema ja tal on soe elu lõpuni. (Terry Pratchett)
e.k spikker: muhk on kumer, lohk on nõgus. |
|
Kommentaarid: 33 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
32 |
|
tagasi üles |
|
 |
Petz
HV Guru
liitunud: 05.11.2001
|
21.04.2012 15:21:02
|
|
|
Ma olen alati arvanud, et HV on õpetlikum kui wikipedia ja ülikool kokku
|
|
Kommentaarid: 81 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
75 |
|
tagasi üles |
|
 |
LiivaneLord
Sõpradele "Olavi"
liitunud: 20.06.2006
|
21.04.2012 17:43:47
|
|
|
Petz, mina sain ka alguses tuge siit. Hiljem oskasin juba ise juurde mõelda ja õppida.
|
|
Kommentaarid: 20 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
19 |
|
tagasi üles |
|
 |
Tomorrow
HV Guru

liitunud: 08.02.2006
|
07.05.2012 08:04:17
|
|
|
Panen kah mõned N++ otsi ja asenda käsud siia. Ehk on kellelegi abiks:
Remove all non albhabet characters like commas and such - Regex:
[^A-Za-z0-9]
(leave this blank)
Remove all blank lines - Extended:
\r\n
(leave this blank)
Find first file with specific extension in file - Regex:
[^"]([^"']+(\.extension)) |
|
|
Kommentaarid: 92 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
82 |
|
tagasi üles |
|
 |
|