Portál AbcLinuxu, 8. května 2024 17:39


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Vložit další komentář
16.10.2008 22:33 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
Rozbalit Rozbalit vše Re: Bash a pseudoznaky (Pattern Matching)
Odpovědět | Sbalit | Link | Blokovat | Admin
Bash se obvykle skloňuje podle vzoru stroj, takže v bashi. Ten ypsilon sice lepší než drátem do oka, ale ne zas o moc :-)

To pseudo radši nebudeme moc řešit, ale myslím, že se obvykle říká spíš zástupné znaky. (Plné regulární výrazy to asi nejsou.)
Ještě na tom nejsem tak špatně, abych četl Viewegha.
16.10.2008 22:34 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
Rozbalit Rozbalit vše Re: Bash a pseudoznaky (Pattern Matching)
Hmm, tak to skoro vypadá, že naopak jsou :-)
Ještě na tom nejsem tak špatně, abych četl Viewegha.
16.10.2008 22:36 Begleiter | skóre: 47 | blog: muj_blog | Doma
Rozbalit Rozbalit vše Re: Bash a pseudoznaky (Pattern Matching)

Jojo :-) díky za připomínky.

17.10.2008 06:40 petr
Rozbalit Rozbalit vše Re: Bash a pseudoznaky (Pattern Matching)
Nejedná se o regulérní výrazy, ale o takzvané "žolíkové karty". Žolíkové znaky se týkají názvů souborů a zpracovává je interpret příkazů (shell). Naproti tomu regulární výrazy se zaobírají obsahem (textových) souborů a jejich interpretaci mají na starosti jednotlivé programy (editory, grep a podobně). Pěkně zpracováno je to třeba zde.
17.10.2008 08:56 cynan | skóre: 3
Rozbalit Rozbalit vše Re: Bash a pseudoznaky (Pattern Matching)
Anglicky "wild cards" a cely proces expanze techto znaku se nazyva "globbing" http://tldp.org/LDP/abs/html/globbingref.html
nejlepsi je Ferda
17.10.2008 10:40 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
Rozbalit Rozbalit vše Re: Bash a pseudoznaky (Pattern Matching)
Nejedná se o regulérní výrazy, ale o takzvané "žolíkové karty". Žolíkové znaky se týkají názvů souborů […]. Naproti tomu regulární výrazy se zaobírají obsahem (textových) souborů
To není tak úplně pravda. Regulární výrazy jsou (dovolím si zkratku) lidsky čitelným zápisem matematického modelu algoritmu pro rozpoznávání určité třídy jazyků. V teorii se obvykle omezujeme na regulární výrazy postihující regulární jazyky, dnešní perlovské i posixové regulární výrazy rozpoznávají jazyky bezkontextové, ale na tom teď nesejde. Zástupné (mně se to slovo žolíkové docela líbí, ale prostě mi nejde přes prsty) znaky jsou jejich podmnožinou a jejich rozpoznávací schopnost je menší (pamatuju si z MS-DOSu jenom otazník a hvězdičku, s tím toho člověk opravdu moc neudělal :-) ).

Na druhý pohled se mi zdálo, že by ty zástupné znaky v bashi mohly mít sílu regulárních výrazů, ale možná nemají. No, nemám chuť, čas a ani schopnosti to dokázat, takže to nechme :-) Určitě se ale regulární výrazy od zástupných znaků nepoznají podle toho, nad čím operují.
Ještě na tom nejsem tak špatně, abych četl Viewegha.
17.10.2008 15:59 Jirka P
Rozbalit Rozbalit vše Re: Bash a pseudoznaky (Pattern Matching)
Ty extgloby mají sílu regexů. Obyčejné globy ne.

POSIXové regexy IMHO bezkontextové jazyky nerozpoznávají (např. nerozpoznají jazyk správně spárovaných závorek). Na druhou stranu rozpoznají některé jazyky, které bezkontextové nejsou. (pokud tedy mám správnou dokumentaci a posixové regexy = obyčejné regexy + backreference)
17.10.2008 16:58 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
Rozbalit Rozbalit vše Re: Bash a pseudoznaky (Pattern Matching)
Díky za doplnění, já všechny tyhle praktické implementace zdaleka nemám v hlavě, jenom vím, že perlovské i posixové regexpy rozpoznají větší třídu jazyků než regulární. Aspoň mne to donutilo si přečíst článek na anglické wikipedii, kde to je docela slušně vysvětlené. S těmi zpětnými referencemi je to docela mazec :-)
Ještě na tom nejsem tak špatně, abych četl Viewegha.
17.10.2008 09:21 CEST
Rozbalit Rozbalit vše Re: Bash a pseudoznaky (Pattern Matching)
Odpovědět | Sbalit | Link | Blokovat | Admin
Mohl bys jeste doplnit expandovani pomoci slozenych zavorek, to pouzivam hodne casto, napr.

for i in file-{1,4,9,12,15} ; do echo $i;done
17.10.2008 11:10 Begleiter | skóre: 47 | blog: muj_blog | Doma
Rozbalit Rozbalit vše Re: Bash a pseudoznaky (Pattern Matching)

Díky za tip. Až budu mít chuť a čas, tak to určitě doplním. :-)

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.