PC Ekspert Forum

PC Ekspert Forum (https://forum.pcekspert.com/index.php)
-   Aplikacije (https://forum.pcekspert.com/forumdisplay.php?f=37)
-   -   Pomoć za dobar text editor (https://forum.pcekspert.com/showthread.php?t=276860)

webstartm 27.02.2016. 22:07

Pomoć za dobar text editor
 
Imam problem, nadam se riješiv
Par sati guglanja nije pomoglo

Treba mi program koji će iz skupa rečenica,koje su složene po principu jedna rečenica jedan red, highlitati traženu rečenicu tj red koja ima u sebi te dvi-tri tražene riječi,a ne samo jednu

Lorem ipsum dolor sit amet, consectetur adipiscing elit
sed do eiusmod tempor incididunt ut labore et dolore magna aliqua
Ut enim ad minim dolor veniam, quis nostrud exercitation ullamco laboris
nisi ut aliquip ex ea commodo consequat
Duis aute irure dolor in reprehenderit in voluptate velit
esse cillum dolore eu fugiat nulla pariatur

E sad, treba imati search/find/mark funkciju koja dopušta upisivanje više nepovezanih riječi i pretragu

Kao npr da za ovaj gore tekst tražim
"dolor" "adipiscing" ,i označi mi prvi red ili te dvije riječi, a 3. i 5. red ne označuje jer nisu zadovoljena oba kriterija,tj riječi

Znači ako postoji u nekom drugom redu jedna od dvije tražene riječi,da ignorira

Probao sam sa notepad++ i napisem (riječ1|riječ2) međutim označi u cijelom dokumentu sve riječi sta pronađe (jednu ili dvi po redu). Treba označiti samo riječi/red u kojem se obe dvije nalaze

Može i formula za excel, nebitno ,samo da radi

Neznam jel kužite što je pisac htio reći :D

SilentException 27.02.2016. 22:46

regex:

^.*(dolor|adipiscing).*(dolor|adipiscing).*$

problem je sto ce ovo naci i linije sa 2x dolor ali to mozes rijesiti ako znas tocan red rijeci i onda u zagrade pises samo te rijeci po redu (jednu, bez |). inace bi trebalo backreference upotrijebiti, što je još ok za search 2 riječi ali za više se eksponentno komplicira...

OuttaControl 28.02.2016. 02:30

Inače Sublime editor radi dobro sa regexom, regex ili ti regularni izraz, nije editor nego amo ga nazvat search pattern, za ovaj tvoj problem ovo bi bio tocniji nacin u sublimeu

Code:

^.*(?=.*dolor)(?=.*adipiscing).*$
da rezimiramo
^ -> početak retka
. -> bilokoji znak
* -> ponavjanje od 0 do beskonačno puta
.* -> bilokoji znak od 0 do beskonačno puta
?= -> match sufix -> ovaj je malo čudan al amo amo reć da je to AND operator u ovom slučaju (iako nije!) i mana je što ako se neka riječ završava na dolor(npr sodolor), nju će isto označit
$ -> kraj reda

a u https://regex101.com/#pcre (testiranje regexa)
Code:

(.*(?=.*dolor)(?=.*adipiscing).*) /g

lutherus 28.02.2016. 07:47

VIM. Nemaš boljeg.

rodney 28.02.2016. 09:40

Citiraj:

Autor OuttaControl (Post 2896558)
?= -> match sufix -> ovaj je malo čudan al amo amo reć da je to AND operator u ovom slučaju (iako nije!) i mana je što ako se neka riječ završava na dolor(npr sodolor), nju će isto označit

To se stvarno lako riješi, dodaš space prije i poslije riječi, pa ti traži cijelu riječ (jer je space character kao i svaki drugi).
Code:

^.*(?=.* dolor )(?=.* adipiscing ).*$
(a može se naravno umjesto razmaka staviti regex da kupi interpunkciju, tako da skupi riječ sa kraja rečenice)

@lutherus, vim je dobar, ali sublime je bolji :P
meni je dovoljan razlog multicursor...

lutherus 28.02.2016. 09:58

Ima i VIM multi cursor. Već godinam :P Mada kad smo kod dobrih editora tu je i EMACS ali i joe's editor.

OuttaControl 28.02.2016. 13:35

Citiraj:

Autor rodney (Post 2896582)
To se stvarno lako riješi, dodaš space prije i poslije riječi, pa ti traži cijelu riječ (jer je space character kao i svaki drugi).
Code:

^.*(?=.* dolor )(?=.* adipiscing ).*$
(a može se naravno umjesto razmaka staviti regex da kupi interpunkciju, tako da skupi riječ sa kraja rečenice)

@lutherus, vim je dobar, ali sublime je bolji :P
meni je dovoljan razlog multicursor...

Da ali to neće sa početka rečenice uzet rič, neznam meni je uvik gore kad nešto ne uzme nego kad uzme krivo :P

Citiraj:

Autor lutherus (Post 2896591)
Ima i VIM multi cursor. Već godinam :P Mada kad smo kod dobrih editora tu je i EMACS ali i joe's editor.

Na faksu su nas jedan semestar prisilili da koristim vim,
proklinjem i taj predmet i VIM i sve vezano za njega, pogotovo na faksu di je namištena tipkovnica na hrvatski layout i onda kad pi pritisnio kombinaciju za pomaknit se gore (Escape -> Left Alt Šift Ctrl Tab Capslock + H+ [ + J + K + L ) on bi zbog nepravilnog layouta nešto drugačije skužio i unio 474 reda neprepoznatljivog teksta u skritpu koju pišeš o.O pa ni backspace tamo nije radio za izbrisat zadnji krivo napisan znak o.O muka mi je kad se sitim :dajpivu:

al ko voli, i ko ima živaca potrošit po godine do godinu na učenje, nek izvoli :goood:

webstartm 28.02.2016. 13:46

Hvala svima puno
Sad radi ka zmaj
Spasili ste mi život od skrolanja kroz 30 tisuca redova

:respekt::fala: :chears:

lutherus 28.02.2016. 13:50

Citiraj:

Autor OuttaControl (Post 2896699)


Na faksu su nas jedan semestar prisilili da koristim vim,
proklinjem i taj predmet i VIM i sve vezano za njega, pogotovo na faksu di je namištena tipkovnica na hrvatski layout i onda kad pi pritisnio kombinaciju za pomaknit se gore (Escape -> Left Alt Šift Ctrl Tab Capslock + H+ [ + J + K + L ) on bi zbog nepravilnog layouta nešto drugačije skužio i unio 474 reda neprepoznatljivog teksta u skritpu koju pišeš o.O pa ni backspace tamo nije radio za izbrisat zadnji krivo napisan znak o.O muka mi je kad se sitim :dajpivu:

al ko voli, i ko ima živaca potrošit po godine do godinu na učenje, nek izvoli :goood:


Zato jer je to najbolji način da dobiješ pun fajl random generiranih znakova. Upališ VIM i daš ljudima da izađu

Bubba 28.02.2016. 14:12

Citiraj:

Autor lutherus (Post 2896708)
Zato jer je to najbolji način da dobiješ pun fajl random generiranih znakova. Upališ VIM i daš ljudima da izađu

Sto bi se reklo, koristim vi(m) vec desetak godina, uglavnom zato sto ne znam kako izaci iz njega.


Sva vremena su GMT +2. Sada je 20:29.

Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 1999-2024 PC Ekspert - Sva prava pridržana ISSN 1334-2940
Ad Management by RedTyger