Fájl- és mappalisták lekérése FTP-szerverekről

Az FTP-kliensnek le kell kérnie az FTP-szerver aktuális mappájának fájl- és mappalistáját. Ennek minél több adatot kell tartalmaznia (dátum, méret, felhasználó, csoport, hozzáférési jogok stb.). Az elemek a panelen jelennek meg, ahol dolgozhat velük. A lista az FTP-szervertől kapott egyszerű szöveges listázásból származik. Ezt emberi olvasásra, nem automatikus feldolgozásra tervezték. Ezért szinte minden FTP-szerver saját listaformátumot használ (az operációs rendszertől, nyelvi verziótól stb. függően), így a kliensnek sok formátumot kell kezelnie.

Minden listaformátumhoz egy szervertípus tartozik. Ez tartalmazza az automatikus felismerési feltételt, az elérhető adatoszlopok listáját (a panelbeli láthatóságukkal együtt) és az egyszerű szöveges lista elemzőjét. Minden megadott szervertípus a Beállítások/Szerverek alatt látható. Új típust a Szervertípus szerkesztése párbeszédpanelen adhat hozzá, vagy meglévőt módosíthat.

Választhat, hogy automatikusan ismerje-e fel a szervertípust. Ha nem, válassza ki a használandó típust. Lásd a Szervertípus beállítást a Haladó beállítások párbeszédpanelen.

Fájl- és mappalisták lekérése megadott szervertípussal

A megadott szervertípus dolgozza fel az egyszerű szöveges listát. Siker esetén fájl- és mappalista az eredmény. Sikertelenségkor a plugin figyelmeztet, és csak a nyers szöveges lista jelenik meg a panelen (ezzel semmilyen művelet nem végezhető).

A „.” mappát, ha szerepel a listában, valamint a „..” mappát, ha a gyökérmappa listájában szerepel, a program eltávolítja a fájl- és mappalistából. A „..” mappa, ha megmarad a listában, mindig látható; rejtett attribútumát figyelmen kívül hagyja.

Fájl- és mappalisták lekérése automatikusan felismert szervertípussal

A program egyenként kipróbálja az összes megadott szervertípust. Mindegyiknél kiértékeli az automatikus felismerési feltételt. Ha hamis, kihagyja a típust, és a következőt próbálja. Ha igaz, ezzel a típussal dolgozza fel a szöveges listát. Siker esetén fájl- és mappalista az eredmény; ellenkező esetben kihagyja a típust, és továbblép.

Ha egyetlen szervertípussal sem sikerült a feldolgozás, a program egyenként kipróbálja az automatikus felismerési feltétel miatt kihagyott típusokat. Mindegyikkel megpróbálja feldolgozni a szöveges listát. Siker esetén fájl- és mappalista az eredmény; ellenkező esetben továbblép a következő típusra.

Ha az összes megadott szervertípus feldolgozása sikertelen, a plugin figyelmeztet, és csak a nyers szöveges lista látszik a panelen (ezzel semmilyen művelet nem végezhető).

A szervertípus automatikus felismerése csak a szervertől kapott első listánál történik meg. A további listák ugyanazt a típust használják, így például az üres listák is ugyanazokat az oszlopokat jelenítik meg. Ha ugyanazzal a típussal nem dolgozható fel a lista, a plugin másik szervertípust próbál felismerni.

A „.” mappát, ha szerepel a listában, valamint a „..” mappát, ha a gyökérmappa listájában szerepel, a program eltávolítja a fájl- és mappalistából. A „..” mappa, ha megmarad a listában, mindig látható; rejtett attribútumát figyelmen kívül hagyja.

Az elemző szintaxisa

A soros megjegyzés a „#” karakterrel kezdődik, és a sorvégkarakterig tart.

Minden szabály „*” karakterrel kezdődik, és „;” karakterrel végződik. A szabályok száma korlátlan. A szabály vesszővel elválasztott függvényekből áll.

A függvény részei: név, „(” karakter, paraméterlista és „)” karakter. A függvények teljes listája ezen az oldalon lejjebb található.

A paraméterlista elemeit vessző választja el. A paraméterek kifejezések.

A kifejezés oszlopazonosító, állapotváltozó, állandó vagy egyetlen bináris művelet lehet. A bináris művelet szokásos alakja: (first_operand operation_symbol second_operand). Az operandus oszlopazonosító, állapotváltozó vagy állandó lehet.

Az oszlopazonosító részei: „<” karakter, azonosítónév és „>” karakter.

Az állapotváltozók és műveleti jelek teljes listája ezen az oldalon lejjebb található.

Az állandó karakterlánc, szám vagy logikai érték lehet.

A karakterláncot kettős idézőjelek ('"' karakterek) fogják közre, és egyetlen sorban kell megadni. Az escape-szekvenciák kezdőjele a '\' karakter. Támogatott szekvenciák: "\\" a '\' karakterhez, "\"" a '"' karakterhez, "\t" a tabulátorhoz, "\r" és "\n" a sorvégkarakterekhez (CR és LF). Minden más escape-szekvencia szintaktikai hibát eredményez.

A szám tízes számrendszerű számjegyekből áll. Negatív szám előtt „-”, pozitív előtt „+” karakter áll; utóbbi elhagyható.

A logikai érték „true” vagy „false”, idézőjelek nélkül.

Oszlopok

Minden oszlophoz azonosítónév, értéktípus, üres érték, a panelen megjelenő név és leírás, valamint értékigazítás tartozik. Az azonosítónév az oszlopazonosítóban szerepel, amellyel érték rendelhető az oszlophoz. Egy elemhez (fájlhoz vagy mappához) oszloponként egyetlen érték tartozhat. Ha nincs hozzárendelve érték, a megadott üres értéket használja a program. Az oszlop lehet látható vagy rejtett; csak a Név és Kiterjesztés típusú oszlopok mindig láthatók. Az oszlopok az Új oszlop / Oszlop szerkesztése párbeszédpanelen adhatók meg.

A következő oszloptípusok használhatók:

TípusLeírás
Névkarakterlánc; fájl- vagy mappanév; pontosan egy ilyen oszlop szükséges; nem rejthető el; üres értéket nincs értelme megadni hozzá; az elemzőnek minden fájlhoz és mappához értéket kell rendelnie ehhez az oszlophoz; ha nincs hozzárendelés, az aktuális szabály nem ad hozzá fájlt vagy mappát (így hagyhatók ki az üres sorok és a lista más lényegtelen részei); az üres karakterlánc ("") hozzárendelése feldolgozási hiba
Kiterjesztéskarakterlánc; fájlkiterjesztés; az értékek automatikusan a Név típusú oszlop értékeiből keletkeznek; nem rejthető el; üres értéket nincs értelme megadni hozzá
Fájlméret bájtban64 bites előjel nélküli egész; fájlméret bájtban; mappáknál az érték nulla, és „DIR” jelenik meg a panelen; az alapértelmezett üres érték nulla
Utolsó írás dátumadátum; az utolsó írás (módosítás) dátuma; az értéknek érvényesnek kell lennie, különben 1602. január 1. kerül a helyére; az alapértelmezett üres érték 1602. január 1.
Utolsó írás idejeidő; az utolsó írás (módosítás) ideje; az alapértelmezett üres érték 0:00:00
Fájltípuskarakterlánc; fájltípus-leírás (a Windows határozza meg a kiterjesztésekhez); az értékek automatikusan a Név típusú oszlopból keletkeznek; üres értéket nincs értelme megadni hozzá
Tetszőleges szövegkarakterlánc; általános célú; az alapértelmezett üres érték az üres karakterlánc ("")
Tetszőleges dátumdátum; általános célú; az értéknek érvényesnek kell lennie, különben 1602. január 1. kerül a helyére; az alapértelmezett üres érték az üres karakterlánc (""), vagyis ha nincs hozzárendelt érték, a panelen semmi nem látszik
Tetszőleges időidő; általános célú; az alapértelmezett üres érték az üres karakterlánc (""), vagyis ha nincs hozzárendelt érték, a panelen semmi nem látszik
Tetszőleges szám64 bites előjeles egész; általános célú; az alapértelmezett üres érték az üres karakterlánc (""), vagyis ha nincs hozzárendelt érték, a panelen semmi nem látszik

Ezenfelül három virtuális oszlop létezik: <is_dir>, <is_hidden> és <is_link>. Logikai értékek rendelhetők hozzájuk. Jelentésük: „mappa-e az elem?” (false esetén fájl), „rejtett-e?” (false esetén nincs rejtett attribútuma), valamint „hivatkozás-e?” (false esetén nem hivatkozás). Nem kötelező értéket rendelni hozzájuk; üres értékeik: „fájl”, „nem rejtett” és „nem hivatkozás”.

Az automatikus felismerési feltétel szintaxisa

Az automatikus felismerési feltétel logikai kifejezés. Műveletei csökkenő prioritási sorrendben: NOT, AND és OR. A NOT (logikai tagadás) egyoperandusú, az AND (logikai és) és az OR (logikai vagy) kétoperandusú. A kifejezés zárójelezett részkifejezéseket is tartalmazhat. Operandusként a következő függvények használhatók:

FüggvényLeírás
syst_contains(string)csak akkor ad vissza true értéket, ha a SYST FTP-parancs válasza (a szerver operációsrendszer-típusának lekérése) tartalmazza a megadott karakterláncot; a keresés nem kis-/nagybetű-érzékeny
welcome_contains(string)csak akkor ad vissza true értéket, ha a szerver első üzenete tartalmazza a megadott karakterláncot; a keresés nem kis-/nagybetű-érzékeny
reg_exp_in_syst(regular_expression_string)csak akkor ad vissza true értéket, ha a SYST FTP-parancs válasza (a szerver operációsrendszer-típusának lekérése) a megadott reguláris kifejezésnek megfelelő karakterláncot tartalmaz; a keresés nem kis-/nagybetű-érzékeny
reg_exp_in_welcome(regular_expression_string)csak akkor ad vissza true értéket, ha a szerver első üzenete a megadott reguláris kifejezésnek megfelelő karakterláncot tartalmaz; a keresés nem kis-/nagybetű-érzékeny

Feldolgozás

A feldolgozás akkor sikeres, ha a megadott szabályokkal teljesen bejárható a szöveges lista.

A listán belüli aktuális helyet mutatónak nevezzük. A feldolgozás során a mutató a lista elejétől a végéig halad.

Egy szabály csak akkor alkalmazható, ha minden függvényének kiértékelése sikeres, a Név típusú oszlophoz nincs üres karakterlánc rendelve (vagyis nem üres szöveg vagy semmi rendelhető hozzá), és a mutató a lista valamely sorának végére került. A szabály alkalmazása után a mutató mindig a következő sor elejére lép.

Kiértékelése közben egy függvény mozgathatja a mutatót, és értékeket rendelhet az oszlopokhoz vagy módosíthatja azokat.

Az elemző tetszőleges számú szabályt tartalmazhat. A szabályokat mindig megadási sorrendben próbálja ki a program, vagyis mindig az első alkalmazható szabályt használja.

A lista hiányos lehet, ha a felhasználó megszakítja az átvitelét vagy hálózati hiba történik. A hiányos listát a program úgy vágja le, hogy csak teljes szövegsorokat tartalmazzon.

A hiányos lista kezelése a szabályok alkalmazásának szintjén történik. Egyszerű esetben a mutató a szabályokkal a hiányos lista végére jut, ami a feldolgozás sikeres befejezését jelenti. Más esetben az aktuális szabály valamely függvényének a következő sorra kellene léptetnie a mutatót, de ez a hiány miatt nem lehetséges. A feldolgozás ilyenkor sikeresen befejeződik, mintha az aktuális szabállyal bejárt sorok nem szerepelnének a hiányos listában.

Támogatott fájlméretek

A plugin bájtban és blokkban megadott fájlméretet támogat. A méretet a Fájlméret bájtban típusú oszlophoz kell rendelni, ha bájtban adott, illetve egy „Blocks” vagy „BlkSize” szabványos nevű Tetszőleges szám típusú oszlophoz. Ekkor fájlcsoport kijelölésekor az információs sorban az összméret bájtban vagy blokkban megjelenik.

Feldolgozó függvények

Külön jelzés hiányában a függvény mindig sikeres, nem mozgatja a mutatót, és nem rendel értéket oszlophoz. Ha mozgatja a mutatót, külön jelzés hiányában a mutató nem haladhat túl a sor végén a következő sorra.

Oszlopazonosító kifejezésbeli használata előtt értéket kell rendelni az oszlophoz. Ellenkező esetben a kifejezés értelmetlen: helyettesíthető az oszlop alapértelmezett üres értékével kiszámított logikai állandóval.

Megjegyzés: az alábbi táblázatban a térköz szóközt vagy tabulátort jelent.

A következő feldolgozó függvények állnak rendelkezésre:

FüggvényLeírás
if(expression)a kifejezés (expression paraméter) eredményének logikai típusúnak kell lennie; a függvény sikeres, ha az eredmény true
assign(<column>, expression)a kifejezés (expression paraméter) eredménytípusának azonosnak kell lennie az oszlop (<column> paraméter) értéktípusával; a kifejezés eredményét az oszlophoz rendeli
skip_white_spaces()kihagyja a mutató helyén lévő összes térközt; a mutatót ezek mögé lépteti, ha vannak
skip_to_number()a mutatót a legközelebbi tízes számrendszerű számjegyre lépteti
white_spaces()kihagyja a mutató helyén lévő összes térközt; a függvény csak akkor sikeres, ha a mutató elmozdul
white_spaces(number)kihagy egy megadott számú (number paraméter) térközből álló karakterláncot a mutató helyén; a mutatót a karakterlánc mögé lépteti; csak akkor sikeres, ha létezik ilyen karakterlánc
white_spaces_and_line_ends()kihagyja a mutató helyén lévő összes térközt és sorvégkaraktert; csak akkor sikeres, ha a mutató elmozdul és nem a lista végén áll, vagyis található karakter a térközök és sorvégek után
rest_of_line()a sor végére lépteti a mutatót; csak akkor sikeres, ha a mutató elmozdul
rest_of_line(<column>)az oszlop (<column> paraméter) értéktípusa karakterlánc kell legyen; a mutatótól a sor vége előtti pozícióig terjedő szöveget az oszlophoz rendeli; a mutatót a sor végére lépteti; csak akkor sikeres, ha a mutató elmozdul
word()kihagy minden karaktert a térközök és sorvégkarakterek kivételével; csak akkor sikeres, ha a mutató elmozdul
word(<column>)az oszlop (<column> paraméter) értéktípusa karakterlánc kell legyen; a mutatótól az első térköz vagy sorvég előtti pozícióig terjedő szöveget az oszlophoz rendeli; a mutatót a szöveg mögé lépteti; csak akkor sikeres, ha a mutató elmozdul
number(<column>)az oszlop (<column> paraméter) értéktípusa egész szám kell legyen; a mutatónál kezdődő tízes számrendszerű számot az oszlophoz rendeli; a számot szokásos elválasztó (vessző, pont, pontosvessző, kettőspont stb.), térköz vagy sorvég kell kövesse, nem betű; a mutatót a szám mögé lépteti; csak akkor sikeres, ha a szám létezik, megfelelően záródik, és Fájlméret bájtban típusú oszlop esetén nem negatív
positive_number(<column>)az oszlop (<column> paraméter) értéktípusa egész szám kell legyen; a mutatónál kezdődő pozitív tízes számrendszerű számot az oszlophoz rendeli; negatív számnál az alapértelmezett üres értéket rendeli hozzá: a Fájlméret bájtban típushoz nullát, a Tetszőleges szám típushoz üres karakterláncot; a számot szokásos elválasztó (vessző, pont, pontosvessző, kettőspont stb.), térköz vagy sorvég kell kövesse, nem betű; a mutatót a szám mögé lépteti; csak akkor sikeres, ha a szám létezik és megfelelően záródik
number_with_separators(<column>, string) az oszlop (<column> paraméter) értéktípusa egész szám kell legyen; a mutatónál kezdődő, számjegycsoport-elválasztókat tartalmazó tízes számrendszerű számot rendeli az oszlophoz; az elválasztók nagy számok olvasását segítik, megengedett karaktereiket a string paraméter adja meg: számjegyek, „+” és „-” kivételével bármely karakter lehet; a számot szokásos elválasztó (vessző, pont, pontosvessző, kettőspont stb.), térköz vagy sorvég kell kövesse, nem betű; a mutatót a szám mögé lépteti; csak akkor sikeres, ha a szám létezik, megfelelően záródik, és Fájlméret bájtban típusú oszlopnál nem negatív
month_3(<column>)az oszlop (<column> paraméter) értéktípusa dátum kell legyen; a mutatónál három betűvel jelölt hónapot az oszlophoz rendeli; több nyelv hónapneveit kezeli (jelenleg angol, német, norvég és svéd); a nevet szokásos elválasztó (vessző, pont, pontosvessző, kettőspont stb.), térköz vagy sorvég kell kövesse, nem betű; a mutatót a név mögé lépteti; csak akkor sikeres, ha a hónapnév ismert és a lista összes hónapneve ugyanazon nyelvű
month_3(<column>, string)az oszlop (<column> paraméter) értéktípusa dátum kell legyen; a mutatónál három betűvel jelölt hónapot az oszlophoz rendeli; a string paraméterben megadott hónapneveket használja: tizenkét hárombetűs név szóközzel elválasztva (angol példa: "jan feb mar apr may jun jul aug sep oct nov dec"); a nevet szokásos elválasztó (vessző, pont, pontosvessző, kettőspont stb.), térköz vagy sorvég kell kövesse, nem betű; a mutatót a név mögé lépteti; csak akkor sikeres, ha a hónapnév szerepel a karakterláncban
month_txt(<column>)az oszlop (<column> paraméter) értéktípusa dátum kell legyen; a mutatónál névvel jelölt hónapot az oszlophoz rendeli; több nyelv hónapneveivel működik (jelenleg a német támogatott); a nevet szokásos elválasztó (vessző, pont, pontosvessző, kettőspont stb.), térköz vagy sorvég kell kövesse, nem betű; a mutatót a név mögé lépteti; csak akkor sikeres, ha a név ismert és a lista összes hónapneve ugyanazon nyelvű
month_txt(<column>, string)az oszlop (<column> paraméter) értéktípusa dátum kell legyen; a mutatónál névvel jelölt hónapot az oszlophoz rendeli; a string paraméter tizenkét, szóközzel elválasztott hónapnevét használja (német példa: "Jan. Feb. März Apr. Mai Juni Juli Aug. Sept. Okt. Nov. Dez."); a nevet szokásos elválasztó (vessző, pont, pontosvessző, kettőspont stb.), térköz vagy sorvég kell kövesse, nem betű; a mutatót a név mögé lépteti; csak akkor sikeres, ha a hónapnév szerepel a karakterláncban
month(<column>)az oszlop (<column> paraméter) értéktípusa dátum kell legyen; a mutatónál tízes számrendszerű számmal jelölt hónapot az oszlophoz rendeli; a számot szokásos elválasztó (vessző, pont, pontosvessző, kettőspont stb.), térköz vagy sorvég kell kövesse, nem betű; a mutatót a szám mögé lépteti; csak akkor sikeres, ha a szám 1 és 12 közé esik
day(<column>)az oszlop (<column> paraméter) értéktípusa dátum kell legyen; a mutatónál tízes számrendszerű számmal jelölt napot az oszlophoz rendeli; a számot szokásos elválasztó (vessző, pont, pontosvessző, kettőspont stb.), térköz vagy sorvég kell kövesse, nem betű; a mutatót a szám mögé lépteti; csak akkor sikeres, ha a szám 1 és 31 közé esik
year(<column>)az oszlop (<column> paraméter) értéktípusa dátum kell legyen; a mutatónál tízes számrendszerű számmal jelölt évet az oszlophoz rendeli; a számot szokásos elválasztó (vessző, pont, pontosvessző, kettőspont stb.), térköz vagy sorvég kell kövesse, nem betű; a mutatót a szám mögé lépteti; csak akkor sikeres, ha a szám 0–999 vagy 1602–9999 tartományú; 0–79 között 2000-et, 80–999 között 1900-at ad hozzá, így például a 107 a 2007-es évet jelenti
time(<column>)az oszlop (<column> paraméter) értéktípusa idő kell legyen; a mutatónál tízes számrendszerű számokkal megadott órát, percet, igény szerint másodpercet és ezredmásodpercet rendeli az oszlophoz; formátumok: 00:00, 00:00:00 vagy 00:00:00.000; az „a”, „am”, „p” vagy „pm” utótag délelőttöt vagy délutánt jelez, és az időt ennek megfelelően korrigálja; az időt szokásos elválasztó (vessző, pont, pontosvessző, kettőspont stb.), térköz vagy sorvég kell kövesse, nem betű vagy számjegy; a mutatót az idő mögé lépteti; csak érvényes értéknél sikeres, a tartományok: 0–23, 0–59, 0–59 és 0–999
year_or_time(<column_date>, <column_time>) az oszlopok (<column_date> és <column_time> paraméter) típusai dátum és idő kell legyenek; a mutatónál lévő évet és igény szerint az időt (csak óra és perc) rendeli az oszlopokhoz; az év tízes számrendszerű szám, az idő két, kettősponttal elválasztott szám; a szokásos Unix-formátumot támogatja: év esetén az idő ismeretlen, idő esetén az évet az aktuális dátumból számítja, hogy a teljes dátum ne legyen hat hónapnál régebbi; a számokat szokásos elválasztó (vessző, pont, pontosvessző, kettőspont stb.), térköz vagy sorvég kell kövesse, nem betű; a mutatót az év vagy idő mögé lépteti; csak érvényes értéknél sikeres: 1602–9999, illetve 0–23:0–59
all(number)kihagyja a megadott számú (number paraméter) karaktert; a mutatót mögéjük lépteti; csak akkor sikeres, ha az összes megadott karaktert kihagyta
all(<column>, number)az oszlop (<column> paraméter) értéktípusa karakterlánc kell legyen; a mutatónál kezdődő, megadott számú karakterből (number paraméter) álló szöveget az oszlophoz rendeli; a mutatót mögé lépteti; csak akkor sikeres, ha ilyen karakterlánc létezik
all_to(string)megkeresi a megadott karakterlánc (string paraméter) első előfordulását kis-/nagybetűk megkülönböztetése nélkül, és mögé lépteti a mutatót; csak akkor sikeres, ha megtalálta
all_to(<column>, string)az oszlop (<column> paraméter) értéktípusa karakterlánc kell legyen; a mutatótól a megadott szöveg (string paraméter) első előfordulásának végéig tartó szöveget az oszlophoz rendeli; a keresés nem kis-/nagybetű-érzékeny; a mutatót a megtalált szöveg mögé lépteti; csak akkor sikeres, ha megtalálta a megadott szöveget
all_up_to(<column>, string)az oszlop (<column> paraméter) értéktípusa karakterlánc kell legyen; a mutatótól a megadott szöveg (string paraméter) első előfordulása előtti pozícióig tartó szöveget az oszlophoz rendeli; a keresés nem kis-/nagybetű-érzékeny; a mutatót a megtalált szöveg mögé lépteti; csak akkor sikeres, ha megtalálta a megadott szöveget
unix_link(<is_dir>, <column_name>, <column_link>)a <column_name> és <column_link> oszlop típusa Név, illetve Tetszőleges szöveg kell legyen; a mutatótól a sor vége előtti pozícióig tartó szöveggel dolgozik, és mögé lépteti a mutatót; a szabványos Unix-hivatkozásformátumot várja: "link_name -> target_name" vagy "link_name", ha a cél nem érhető el; kinyeri a nevet és igény szerint a célt, és felismeri, fájlra vagy mappára mutat-e; heurisztikája szerint ha a név vagy a cél tartalmaz kiterjesztést, valószínűleg fájlra mutat, különben mappára; ha ez nem megfelelő, a unix_link után például az "assign(<is_dir>,false)" függvény adható meg; a hivatkozás nevét a <column_name>, ismert célját a <column_link> oszlophoz rendeli; mappára mutató hivatkozásnál true értéket rendel az <is_dir> virtuális oszlophoz; csak akkor sikeres, ha a szöveg megfelel a várt formátumnak, és nem térközzel kezdődik
unix_device(<column>)az oszlop (<column> paraméter) értéktípusa karakterlánc kell legyen; a mutatónál kezdődő, két tízes számrendszerű számot vesszővel és több szóközzel elválasztva tartalmazó szöveget (például "27, 26") rendeli az oszlophoz; a szöveget szokásos elválasztó (vessző, pont, pontosvessző, kettőspont stb.), térköz vagy sorvég kell kövesse, nem betű; a mutatót a szöveg mögé lépteti; csak akkor sikeres, ha megtalálja a szöveget
add_string_to_column(<column>, expression) az oszlop (<column> paraméter) és a kifejezés (expression paraméter) eredménytípusa karakterlánc kell legyen; a kifejezés eredményét az oszlophoz fűzi
cut_white_spaces_end(<column>)az oszlop (<column> paraméter) értéktípusa karakterlánc kell legyen; levágja az oszlop szövegének végéről a térközöket, és az új szöveget az oszlophoz rendeli
cut_white_spaces_start(<column>)az oszlop (<column> paraméter) értéktípusa karakterlánc kell legyen; levágja az oszlop szövegének elejéről a térközöket, és az új szöveget az oszlophoz rendeli
cut_white_spaces(<column>)az oszlop (<column> paraméter) értéktípusa karakterlánc kell legyen; levágja az oszlop szövegének elejéről és végéről a térközöket, majd az új szöveget az oszlophoz rendeli
back(number)a megadott számú (number paraméter) karakterrel visszalépteti a mutatót; csak akkor sikeres, ha ez lehetséges; az előző sorba nem léphet vissza
cut_end_of_string(<column>, number)az oszlop (<column> paraméter) értéktípusa karakterlánc kell legyen; levágja a megadott számú (number paraméter) karaktert az oszlop szövegének végéről, és az új szöveget az oszlophoz rendeli; csak akkor sikeres, ha az eredeti érték hossza legalább number volt

A feldolgozás állapotváltozói

A következő állapotváltozók állnak rendelkezésre:

VáltozóLeírás
first_nonempty_linelogikai; csak akkor true, ha a mutató az első nem üres sorban áll, amely nem kizárólag térközöket tartalmaz
last_nonempty_linelogikai; csak akkor true, ha a mutató az utolsó nem üres sorban áll, amely nem kizárólag térközöket tartalmaz; nem veszi figyelembe, hogy a lista teljes-e vagy hiányos
next_charkarakterlánc; a mutató helyén lévő egyetlen karaktert tartalmazza; a lista végén üres
next_wordkarakterlánc; a mutatónál kezdődik, és az első térköz vagy sorvég előtt végződik
rest_of_linekarakterlánc; a mutatónál kezdődik, és a sor vége előtt végződik

A feldolgozás operátorai

Oszlopazonosító kifejezésbeli használata előtt értéket kell rendelni az oszlophoz. Ellenkező esetben a kifejezés értelmetlen: helyettesíthető az oszlop alapértelmezett üres értékével kiszámított logikai állandóval.

A következő operátorok használhatók:

OperátorLeírás
==egyenlőség; a karakterlánc-összehasonlítás kis-/nagybetű-érzékeny
!=egyenlőtlenség; a karakterlánc-összehasonlítás kis-/nagybetű-érzékeny
eqkarakterlánc-egyenlőség; csak karakterláncokra; az összehasonlítás nem kis-/nagybetű-érzékeny
not_eqkarakterlánc-egyenlőtlenség; csak karakterláncokra; az összehasonlítás nem kis-/nagybetű-érzékeny
inrészszövegkeresés; csak akkor true, ha a részszöveg (bal operandus) szerepel a szövegben (jobb operandus); az összehasonlítás nem kis-/nagybetű-érzékeny
not_incsak akkor true, ha a részszöveg (bal operandus) nem szerepel a szövegben (jobb operandus); az összehasonlítás nem kis-/nagybetű-érzékeny
end_withcsak akkor true, ha a szöveg (bal operandus) a részszöveggel (jobb operandus) végződik; az összehasonlítás nem kis-/nagybetű-érzékeny
not_end_withcsak akkor true, ha a szöveg (bal operandus) nem a részszöveggel (jobb operandus) végződik; az összehasonlítás nem kis-/nagybetű-érzékeny

Lásd még

Beállítások/Szerverek
Szervertípus szerkesztése párbeszédpanel
Új oszlop / Oszlop szerkesztése párbeszédpanel
Elemző tesztelése párbeszédpanel

From the Sally manual (GPL-2.0-or-later), © 1997-2023 Open Salamander Authors; © 2025-2026 Elias Bachaalany. Source: manual source (zip) · original page in the Sally repository