Mám výraz
'^(www)?\K.+?$' (bez uvozovek) volaný grep-em s parametry -P a především -o (to je důležité, jelikož matchuje jakýkoli řádek, ale výstup je bez toho "pocatek")
Jde nějak ho převést do tvaru aniž by tam bylo \ K a aniž bych www bylo ve výrazu dvakrát?? Zkoušel jsem
'(?:(www|^)).+?$'
'(?:(www)?).+$'
(?<=www)
(?<=www|^).+$'
a další (i positive lookahead)
nevíc se tomu blíží sloučení '^(?!www).+?$' a (?<=www).+?$'
Ale nikdy se mi nepodařilo přijít na kloub tomu
prostě aby to z řádků
www.neco
wtf.tamto
www.www.hento
vyplivlo (všechny ) řádky, ale s tím oříznutým www, tudíž :
.neco
wtf.tamto
.www.hnto
to oříznutí je právě díky -o
Samozřejmě, jde to přes sed a nebo přes ten zmíněný \K v grepu... ale jak to udělám přes grep? Zcela jistě se tam využije
něco z
non-captring groups, operátor ^, ungreddy modifikátor .+?, lookbehind , lookafter
EDIT: pardon, non capturing groups je nesmysl ... ty by měly smysl v match_data strukurách (třeba výsledek pregmatch vphp) a tady je to plain grep co rovnou háže výstup