(E-Book - Pl Pdf) Linux - Perl W Przetwarzaniu Tesktu.pdf
(
224 KB
)
Pobierz
51108016 UNPDF
dowisku systemu
UNIX
, to w dziedzinie prze-
DOS
em. Wszystko wiƒc, o czym bƒdzie mowa po-
winno funkcjonowa¢ w
DOS
owych implementacjach
. Z u»ywaniem
DOS
a i Perla wi¡»e siƒ jed-
jest opcja
-i
(sk¡din¡d bardzo po»yteczna), ale tak
siƒ nieszczƒ–liwie sk“ada, »e pod
DOS
em nazwy
dy-
plom.tex
i
dyplom.tex.bak
oznaczaj¡ ten sam plik.
dla wielu
DOS
owych implementacji Perla jest jedn¡
z metod usuniƒcia zawarto–ci pliku
dyplom.tex
(w
czasie prbyutworzenia pliku
dyplom.tex.bak
).
Opcje wywo“ania.
W wywo“aniu Perla mo»na po-
{a
w“¡cza tryb automatycznego dzielenia
rekordw wej–ciowych (ang.
autosplit
). Pola
{e SKRYPT
umo»liwia podanie jednego
{i [EXT]
powoduje modykacjƒ pliku wej–cio-
<>
(ang.
in-place editing
). Je»eli podane
te» sytuacje odwrotne, ale na tyle rzadko, »e
ad
: Tak naprawdƒ przyk“ady by“y testowane wy“¡cz-
hoc
trudno wymy–li¢ konkretny przyk“ad.
nie w systemie
UNIX
.
jest opcjonalne rozszerzenie
EXT
, to poprzed-
o nazwie z dodanym przyrostkiem
EXT
.
$var
korzystania z
DOS
owych implementacji Perla
$var[13]
trzynasty element tablicy
@var
.
$var{’Feb’}
warto–¢ jednego z elementw
{n
umieszcza skrypt w domy–lnej pƒtli
tablicy asocjacyjnej
%var
.
$#var
ostatni indeks tablicy
@var
.
@var
@var[3,4,5]
przekrj tablicy
@var
.
{p
umieszcza skrypt w domy–lnej pƒtli
%var{’a’,’b’}
przekrj tablicy
%var
.
INPUT
*var
{w
wypisuje ostrze»enia o mo»liwych b“ƒdach
Wczytywanie danych.
Notacja u»ywana w Perlu do
W pierwszym przypadku
WYR1
zostanie wykonane
je»eli
WYR2
zwrci warto–¢ niezerow¡ (podobnie jak
W drugim przypadku wyra»enie
WYR1
bƒdzie
wykonywane dopki
WYR2
bƒdzie fa“szywe.
operatory logiczne
||
,
&&
i
?
np.:
nale»y je wcze–niej otworzy¢ funkcj¡
open
. Czƒsto
u»ywan¡ notacjƒ
<STDIN>
mo»na skrci¢ do postaci
<>
np.:
ze standardowego wej–cia do zmiennej
$line
,
zmiennej
$_
.
program jest przerywany(
open or die
).
Przy pomocy nawiasw klamrowych
{}
mo»na
**
{ potƒgowanie.
eq
,
ne
{rwno–¢, nierwno–¢ ci¡gw znakw.
lt
,
gt
{znakowe mniejszy ni», wiƒkszy ni».
le
,
ge
{znakowe mniejszy (wiƒkszy) lub rwny.
<=>
{porwnywanie liczb, zwraca
1, 0 lub 1.
cmp { porwnywanie ci¡gw znakw, zwraca
1, 0 lub 1.
=~
,
!~
{ specykacja wzorca wyszukiwania,
..
{ zakres (indeksw, lini wej–ciowych, itp.).
x
{ operator powtrzenia ci¡gu znakw.
.
{ oznacza dowolny znak oprcz znaku nowego
Instrukcja
next
powoduje przej–cie do nastƒpnej
(...)
{ nawiasy okr¡g“e grupuj¡ kilka
iteracji pƒtli (dzia“a tak jak
continue
w jƒzyku C),
last
powoduje natychmiastowe wyj–cie z pƒtli
+ { oznacza co najmniej jedno wyst¡pienie
(tak jak
break
w C), a
redo
wykonuje tƒ sam¡
?
{ co najwy»ej jedno wyst¡pienie poprzedniego
zako«czenia. Ka»dej z instrukcji
next
,
last
i
redo
,
* {dowolna liczba wyst¡pie« elementu (“¡cznie
{N,M} { co najmniej N wyst¡pie«, ale nie wiƒcej
[...] { oznacza klasƒ znakw (dowolny znak
(...|...|...) { jedna z alternatyw.
\w { znak alfanumeryczny (wraz z _"), \W {
\b { granica s“owa, \B { wnƒtrze s“owa.
zwy poprzedzonej znakiem
&
{np.
&procedura($a,
\s { spacja (itd.), \S { nie spacja.
"tekst")
. Je»eli procedura nie wymaga poda-
\d { cyfra, \D { nie cyfra.
\n,\r,\t,\f { CR, LF, TAB, FF.
\1...\9 { odwo“ania do kolejnych podwyra-
do procedury w specjalnej tablicy
@_
.Dokolejnych
poprzez
$_[1]
,
$_[2]
itd.
przetwarzaniu tekstw. Znaczek
y
" oznacza, »e
{
"CMD|"
{otwarcie potoku z polecenia
CMD
.
pop(@TABLICA)* { pobiera ostatni element
funkcji jest zmienna
$_
). Znaczek *" przy
print[([DESKR] LISTA
y
)
*
]
{ wypisuje na
chop(LISTA
y
) { odcina ostatni znak z wszyst-
printf[([DESKR] LISTA)
*
]
{ rwnowa»ne
eof[(DESKR)]
{ test ko«ca pliku; bez argu-
z
print DESKR sprintf(LISTA)
.
push(@TABLICA,LISTA) { dopisuje warto–ci
eval(WYRAENIE)
{
WYRAENIE
jest analizo-
reverse(LISTA)
*{wkontek–cie wektorowym
niowan¡, a w zmiennej
$@
umieszczany jest
grep(WYR,LISTA)
{ oblicza wyra»enie
WYR
dla
scalar(%TABLICA)
{ zwraca warto–¢ praw-
warto–ci z listy pod zmienn¡
$_
. Modykacja
$_
scalar(@TABLICA)
{ zwraca liczbƒ elementw
select[(DESKR)] { ustawia domy–lny kana“
join(WYR,LISTA)
{ “¡czy oddzielne ci¡gi
shift(@TABLICA)
* { pobiera pierwszy element
WYR
.
length(WYR
y
)
* { zwraca d“ugo–¢ wyra»enia
WYR
w znakach.
na tablicy
@ARGV
w programie g“wnym lub na
open(DESKR[,NAZWA])
{otwiera plik i zwi¡zuje
tablicy
@_
w procedurach.
sort([PROC] LISTA)
* { sortuje listƒ i zwraca
{
"FILE"
{otwarcie pliku do czytania.
split[(WZORZEC[,CIG
y
[,LIMIT]])] { dzieli
{
"<FILE"
{ jw.
{
">FILE"
{ otwarcie pliku do pisania,
LIMIT
pl. Przy braku wzorca, dzieli na
{
">>FILE"
{ otwarcie pliku w trybie
“a«cuch zwraca w tablicy
@_
.
sprintf(FORMAT, LISTA) { zwraca sforma-
{
"|CMD"
{ otwarcie potoku do polecenia
CMD
.
unshift(@TABLICA,LISTA)
{ dodaje listƒ
substr(WYR,POCZ[,D])
{ wybiera fragment
$_
{ najwa»niejsza zmienna w Perlu, pe“ni¡ca
(d“ugo–ci
D
{je–liby“a podana) ci¡gu znakw
reprezentowanego przez
WYR
, pocz¡wszy od
znaku o numerze
POCZ
(znaki s¡ oczywi–cie
$.
{ numer bie»¡cego wiersza ostatnio
$/
{ separator rekordw { domy–lnie znak
Funkcje wyszukiwania i zamiany.
Przy przetwarza-
nowego wiersza, odpowiednik zmiennej
RS
[WYR =~][m]/WZORZEC/[g][i][o]
$,
{ separator pl na wyj–ciu, odpowiednik
OFS
$\
{ separator rekordw na wyj–ciu, odpowied-
nik
ORS
wawku.
$0 { nazwa pliku zawieraj¡cego wykonywany
ograniczonych nawiasami (tzn.
$1
,
$2
,
$3
,
$ARGV
{nazwa bie»¡czego pliku czytanego przy
itd.). Opcjonalne modykatory:
g
" oznacza
u»yciu konstrukcji
<>
.
dopasowanie wielokrotne,
i
" dopasowanie bez
$&
{ ci¡g znakw pasuj¡cy do ostatnio
rozr»nienia wielko–ci liter,
o
" rozwiniƒcie
$‘
{ ci¡g znakw poprzedzaj¡cych to co
$’
{ ci¡g znakw poprzedzany przez to co
[$ZM =~]s/WZORZEC/NOWY/[g][i][e][o]
$1...$9 { wzorce pasuj¡ce do podwyra»e«
@ARGV
{ tablica zawieraj¡ca argumenty wier-
nie zwraca zero. Opcjonalne modykatory:
g
"
zast¡pienie wszystkich wyst¡pie« wzorca;
e
"
ra»enia przed dokonaniem podstawienia;
i
"
@_ { tablica argumentw dla procedur.
oraz
o
" maj¡ znaczenie takie samo jak
[$ZM =~]tr/CIG/NOWYCIG/[c][d][s]
kich znakw z listy;
s
" { od ang.
squeeze
na wyj–ciu (np.
tr/abc/ABC/s
przekszta“ci
perl -pe ’s/-\s*\n$//’
hpliki i
“a«cuch
"abaaacc"
na
"ABAC"
).
Plik z chomika:
lysyk-k
Inne pliki z tego folderu:
KursHTML.rar
(2734 KB)
Debian GNU Linux.rar
(11521 KB)
elementarz_unixowy_v2.rar
(489 KB)
Srodowisko graficzne KDE.pdf
(369 KB)
Tux Paint 0.9.17.rpm
(7287 KB)
Inne foldery tego chomika:
- komputer
Pliki dostępne do 08.07.2024
♦Linux Ubuntu na codzień
@kurs
₪ ₪◕ FILMY FULL HD 1080p. ===================
Zgłoś jeśli
naruszono regulamin