Bestands- en mappenlijsten van FTP-servers ophalen
De FTP-client moet de bestanden en mappen in de huidige map op de FTP-server opvragen, met zo veel mogelijk informatie: datum, grootte, gebruiker, groep, toegangsrechten enzovoort. Deze verschijnen in het paneel, waar u ermee kunt werken. De lijst wordt afgeleid uit de tekstlijst die de server verstuurt. Die is bedoeld om door mensen te worden gelezen, niet voor automatische verwerking. Vrijwel elke FTP-server gebruikt daardoor een eigen lijstindeling, afhankelijk van bijvoorbeeld besturingssysteem en taal. De client moet dus veel indelingen kunnen verwerken.
Voor elke lijstindeling is een servertype gedefinieerd. Dat bevat een voorwaarde voor automatische herkenning, een lijst met beschikbare gegevenskolommen en hun zichtbaarheid, en een parser voor de tekstlijst. Alle typen staan in Configuratie/Servers. U kunt typen toevoegen of wijzigen in het dialoogvenster Wijzig servertype.
U kunt kiezen of het servertype automatisch wordt herkend. Zo niet, kies dan het te gebruiken type. Zie Servertype in het dialoogvenster Geavanceerde opties.
Bestands- en mappenlijsten ophalen met een opgegeven servertype
Het opgegeven servertype wordt gebruikt om de tekstlijst te ontleden. Bij succes levert dat de bestands- en mappenlijst op. Anders toont de plugin een waarschuwing en uitsluitend de onbewerkte tekstlijst in het paneel. Daarmee kunnen geen bewerkingen worden uitgevoerd.
De map "." wordt verwijderd als deze in de lijst staat. De map ".." wordt verwijderd als deze in de lijst voor de hoofdmap staat. In andere gevallen is ".." altijd zichtbaar; het kenmerk Verborgen wordt ervoor genegeerd.
Bestands- en mappenlijsten ophalen met een automatisch herkend servertype
Alle gedefinieerde servertypen worden een voor een geprobeerd. Per type wordt de herkenningsvoorwaarde geëvalueerd. Als deze onwaar is, wordt het type overgeslagen. Als deze waar is, wordt het type gebruikt om de tekstlijst te ontleden. Bij succes levert dat de bestands- en mappenlijst op. Anders wordt het type overgeslagen en het volgende geprobeerd.
Als geen servertype de lijst met succes heeft ontleed, worden alle typen die vanwege hun herkenningsvoorwaarde zijn overgeslagen een voor een geprobeerd. Elk type probeert de tekstlijst te ontleden. Bij succes levert dat de bestands- en mappenlijst op; anders wordt het volgende type geprobeerd.
Als geen enkel gedefinieerd servertype de lijst kan ontleden, toont de plugin een waarschuwing en uitsluitend de onbewerkte tekstlijst in het paneel. Daarmee kunnen geen bewerkingen worden uitgevoerd.
Het servertype wordt alleen bij de eerste lijst van de server automatisch herkend. Alle volgende lijsten gebruiken hetzelfde type, zodat bijvoorbeeld ook bij lege lijsten dezelfde kolommen worden getoond. Als een lijst niet met dit type kan worden ontleed, probeert de plugin een ander type automatisch te herkennen.
De map "." wordt verwijderd als deze in de lijst staat. De map ".." wordt verwijderd als deze in de lijst voor de hoofdmap staat. In andere gevallen is ".." altijd zichtbaar; het kenmerk Verborgen wordt ervoor genegeerd.
Parsersyntaxis
Een regelcommentaar begint met # en eindigt bij het regeleindeteken.
Elke regel begint met * en eindigt met ;. Het aantal regels is onbeperkt. Een regel bestaat uit functies, gescheiden door komma’s (,).
Een functie bestaat uit een naam, (, een parameterlijst en ). Verderop op deze pagina staat de volledige lijst met functies.
Parameters worden door komma’s (,) gescheiden. Parameters zijn uitdrukkingen.
Een uitdrukking is een kolomidentificatie, toestandsvariabele, constante of één binaire bewerking. De binaire bewerking heeft de standaardvorm (first_operand operation_symbol second_operand). Een operand kan een kolomidentificatie, toestandsvariabele of constante zijn.
Een kolomidentificatie bestaat uit het teken <, de identificatienaam en het teken >.
De volledige lijsten met toestandsvariabelen en bewerkingstekens staan verderop op deze pagina.
Een constante is een tekenreeks, getal of booleaanse waarde.
Een tekenreeks staat tussen dubbele aanhalingstekens (") en moet op één regel staan. Escape-reeksen beginnen met \. Ondersteund zijn "\\" voor \, "\"" voor een dubbel aanhalingsteken, "\t" voor een tab en "\r" en "\n" voor de regeleindetekens CR en LF. Andere escape-reeksen geven een syntaxisfout.
Een getal bestaat uit decimale cijfers. Negatieve getallen beginnen met -. Positieve getallen mogen met + beginnen, maar dit is niet verplicht.
Een booleaanse waarde is true of false, zonder dubbele aanhalingstekens.
Kolommen
Elke kolom heeft een identificatienaam, waardetype, lege waarde, naam en beschrijving voor het paneel en een uitlijning. De identificatienaam wordt gebruikt om waarden aan de kolom toe te wijzen. Per bestand of map bevat elke kolom hoogstens één waarde. Zonder toegewezen waarde wordt de ingestelde lege waarde gebruikt. Kolommen kunnen zichtbaar of verborgen zijn; alleen de typen Naam en Extensie zijn altijd zichtbaar. U definieert kolommen in het dialoogvenster Nieuwe kolom/Wijzig kolom.
De volgende kolomtypen zijn beschikbaar:
| Type | Beschrijving |
|---|---|
| Naam | Tekenreeks; bestands- of mapnaam. Er is precies één kolom van dit type vereist. Deze kan niet worden verborgen en een lege standaardwaarde heeft geen betekenis. De parser moet voor elk bestand en elke map een waarde toewijzen. Zonder toewijzing voegt de huidige parserregel geen bestand of map toe; zo worden lege regels en onbelangrijke delen van de tekstlijst overgeslagen. Een lege tekenreeks ("") toewijzen geldt als ontleedfout. |
| Extensie | Tekenreeks; bestandsextensie. Waarden worden automatisch afgeleid van de kolom van het type Naam. Deze kolom kan niet worden verborgen en een lege standaardwaarde heeft geen betekenis. |
| Bestandsgrootte in Bytes | 64-bits geheel getal zonder teken; bestandsgrootte in bytes. Voor mappen is de waarde nul en wordt DIR getoond. De standaardwaarde voor leeg is nul. |
| Laatste Schrijf Datum | Datum; datum van de laatste wijziging. De datum moet geldig zijn; anders wordt deze vervangen door 1 januari 1602. De standaardwaarde voor leeg is 1 januari 1602. |
| Laatste Schrijf Tijd | Tijd; tijdstip van de laatste wijziging. De standaardwaarde voor leeg is 0:00:00. |
| Bestands Type | Tekenreeks; beschrijving van het bestandstype die Windows voor de extensie definieert. Waarden worden automatisch afgeleid van de kolom van het type Naam. Een lege standaardwaarde heeft geen betekenis. |
| Willekeurige Text | Tekenreeks voor algemeen gebruik. De standaardwaarde voor leeg is een lege tekenreeks (""). |
| Willekeurig Datum | Datum voor algemeen gebruik. De datum moet geldig zijn; anders wordt deze vervangen door 1 januari 1602. De standaardwaarde voor leeg is een lege tekenreeks (""): zonder toewijzing verschijnt niets in het paneel. |
| Willekeurige Tijd | Tijd voor algemeen gebruik. De standaardwaarde voor leeg is een lege tekenreeks (""): zonder toewijzing verschijnt niets in het paneel. |
| Willekeurig Getal | 64-bits geheel getal met teken voor algemeen gebruik. De standaardwaarde voor leeg is een lege tekenreeks (""): zonder toewijzing verschijnt niets in het paneel. |
Daarnaast zijn er drie virtuele kolommen: <is_dir>, <is_hidden> en <is_link>. Deze krijgen booleaanse waarden met de betekenissen: is dit item een map (false betekent een bestand), is dit item verborgen (false betekent geen verborgen kenmerk) en is dit item een koppeling (false betekent geen koppeling)? Waarden toewijzen is niet verplicht. Hun lege standaardwaarden betekenen: een bestand, niet verborgen en geen koppeling.
Syntaxis van de herkenningsvoorwaarde
De herkenningsvoorwaarde is een logische uitdrukking. De operatoren zijn, van hoge naar lage prioriteit, NOT, AND en OR. NOT (logische ontkenning) is unair; AND (logische conjunctie) en OR (logische disjunctie) zijn binair. De uitdrukking kan deeluitdrukkingen tussen haakjes bevatten. De volgende functies dienen als operanden:
| Functie | Beschrijving |
|---|---|
| syst_contains(string) | Retourneert alleen true als het antwoord op de FTP-opdracht SYST, die het besturingssysteem van de server opvraagt, de opgegeven tekst bevat. De zoekopdracht is niet hoofdlettergevoelig. |
| welcome_contains(string) | Retourneert alleen true als het eerste serverbericht de opgegeven tekst bevat. De zoekopdracht is niet hoofdlettergevoelig. |
| reg_exp_in_syst(regular_expression_string) | Retourneert alleen true als het antwoord op de FTP-opdracht SYST, die het besturingssysteem van de server opvraagt, tekst bevat die overeenkomt met de opgegeven reguliere expressie. De zoekopdracht is niet hoofdlettergevoelig. |
| reg_exp_in_welcome(regular_expression_string) | Retourneert alleen true als het eerste serverbericht tekst bevat die overeenkomt met de opgegeven reguliere expressie. De zoekopdracht is niet hoofdlettergevoelig. |
Ontleden
Het ontleden slaagt als de volledige tekstlijst met de gedefinieerde regels is doorlopen.
De huidige positie in de lijst wordt de aanwijzer genoemd. Tijdens het ontleden beweegt deze van het begin naar het einde van de lijst.
Een regel kan alleen worden toegepast als alle functies slagen, geen lege tekenreeks aan de kolom van het type Naam is toegewezen en de aanwijzer het einde van een lijstregel bereikt. Een niet-lege waarde of geen toewijzing aan Naam is dus toegestaan. Na het toepassen van een regel gaat de aanwijzer altijd naar het begin van de volgende lijstregel.
Tijdens de evaluatie kan een functie de aanwijzer verplaatsen en kolomwaarden toewijzen of wijzigen.
De parser kan zoveel regels bevatten als nodig. Ze worden altijd in de volgorde van hun definitie geprobeerd: de eerste toepasbare regel wordt gebruikt.
De lijst kan onvolledig zijn doordat de gebruiker de overdracht annuleert of een netwerkfout optreedt. Een onvolledige lijst wordt ingekort zodat uitsluitend volledige tekstregels overblijven.
Het ontleden van een onvolledige lijst wordt bij het toepassen van regels afgehandeld. In het eenvoudigste geval bereikt de aanwijzer met deze regels het einde van de lijst en slaagt het ontleden. Anders kan een functie van de huidige regel proberen naar een volgende lijstregel te gaan die ontbreekt. Het ontleden eindigt dan alsnog met succes, alsof de regels die door de huidige parserregel worden doorlopen niet in de onvolledige lijst stonden.
Ondersteunde bestandsgroottes
De plugin ondersteunt bestandsgroottes in bytes en blokken. Wijs de grootte in bytes toe aan een kolom van het type Bestandsgrootte in Bytes. Gebruik voor blokken een kolom van het type Willekeurig Getal met de standaardnaam Blocks of BlkSize. Bij selectie van meerdere bestanden verschijnt de totale grootte in bytes of blokken dan in de informatieregel.
Functies voor het ontleden
Tenzij anders vermeld, slaagt een functie altijd, verplaatst deze de aanwijzer niet en wijst deze geen kolomwaarden toe. Als een functie de aanwijzer verplaatst, mag deze tenzij anders vermeld niet voorbij het regeleinde naar de volgende regel gaan.
Voordat u een kolomidentificatie in een uitdrukking gebruikt, moet aan die kolom een waarde zijn toegewezen. Anders heeft de uitdrukking geen betekenis en kan deze worden vervangen door de booleaanse constante die met de lege standaardwaarde van de kolom wordt berekend.
Opmerking: in de volgende tabel betekent witruimte een spatie of tab.
De volgende functies zijn beschikbaar voor het ontleden:
| Functie | Beschrijving |
|---|---|
| if(expression) | Het resultaat van de uitdrukking, de parameter expression, moet booleaans zijn. De functie slaagt als het resultaat true is. |
| assign(<column>, expression) | Het resultaattype van de uitdrukking, de parameter expression, moet overeenkomen met het waardetype van de kolom, de parameter <column>. Wijst het resultaat aan de kolom toe. |
| skip_white_spaces() | Slaat alle witruimte op de aanwijzerpositie over en verplaatst de aanwijzer erachter als er witruimte is. |
| skip_to_number() | Verplaatst de aanwijzer naar het dichtstbijzijnde decimale cijfer. |
| white_spaces() | Slaat alle witruimte op de aanwijzerpositie over. De functie slaagt alleen als de aanwijzer wordt verplaatst. |
| white_spaces(number) | Slaat vanaf de aanwijzerpositie een reeks met het opgegeven aantal witruimtetekens, de parameter number, over en verplaatst de aanwijzer erachter. De functie slaagt alleen als zo’n reeks bestaat. |
| white_spaces_and_line_ends() | Slaat alle witruimte en regeleindetekens op de aanwijzerpositie over. De functie slaagt alleen als de aanwijzer wordt verplaatst en niet aan het einde van de lijst staat: na de witruimte en regeleinden moet nog een teken volgen. |
| rest_of_line() | Verplaatst de aanwijzer naar het regeleinde. De functie slaagt alleen als de aanwijzer wordt verplaatst. |
| rest_of_line(<column>) | Het waardetype van de kolom, de parameter <column>, moet een tekenreeks zijn. Wijst de tekst vanaf de aanwijzer tot vóór het regeleinde aan de kolom toe en verplaatst de aanwijzer naar het regeleinde. De functie slaagt alleen als de aanwijzer wordt verplaatst. |
| word() | Slaat alle tekens over behalve witruimte en regeleindetekens. De functie slaagt alleen als de aanwijzer wordt verplaatst. |
| word(<column>) | Het waardetype van de kolom, de parameter <column>, moet een tekenreeks zijn. Wijst de tekst vanaf de aanwijzer tot vóór de eerste witruimte of het regeleinde aan de kolom toe en verplaatst de aanwijzer achter die tekst. De functie slaagt alleen als de aanwijzer wordt verplaatst. |
| number(<column>) | Het waardetype van de kolom, de parameter <column>, moet een geheel getal zijn. Wijst het decimale getal vanaf de aanwijzerpositie aan de kolom toe. Het getal moet worden gevolgd door een gebruikelijk scheidingsteken zoals komma, punt, puntkomma of dubbele punt, witruimte of een regeleinde, en niet door een letter. De aanwijzer gaat achter het getal staan. De functie slaagt alleen als het getal bestaat, correct wordt afgesloten en bij het kolomtype Bestandsgrootte in Bytes niet negatief is. |
| positive_number(<column>) | Het waardetype van de kolom, de parameter <column>, moet een geheel getal zijn. Wijst een positief decimaal getal vanaf de aanwijzerpositie aan de kolom toe. Bij een negatief getal wordt de lege standaardwaarde toegewezen: nul voor Bestandsgrootte in Bytes en een lege tekenreeks voor Willekeurig Getal. Na het getal moet een gebruikelijk scheidingsteken zoals komma, punt, puntkomma of dubbele punt, witruimte of een regeleinde volgen, geen letter. De aanwijzer gaat achter het getal staan. De functie slaagt alleen als het getal bestaat en correct is afgesloten. |
| number_with_separators(<column>, string) | Het waardetype van de kolom, de parameter <column>, moet een geheel getal zijn. Wijst vanaf de aanwijzerpositie een decimaal getal met cijfergroeperingstekens aan de kolom toe. Die vergemakkelijken het lezen van grote getallen. De toegestane tekens staan in de parameter string; alle tekens behalve decimale cijfers, + en - zijn toegestaan. Na het getal moet een gebruikelijk scheidingsteken zoals komma, punt, puntkomma of dubbele punt, witruimte of een regeleinde volgen, geen letter. De aanwijzer gaat achter het getal staan. De functie slaagt alleen als het getal bestaat, correct is afgesloten en bij Bestandsgrootte in Bytes niet negatief is. |
| month_3(<column>) | Het waardetype van de kolom, de parameter <column>, moet een datum zijn. Wijst een maand met drie letters op de aanwijzerpositie aan de kolom toe. Ondersteunde talen zijn momenteel Engels, Duits, Noors en Zweeds. Na de maandnaam moet een gebruikelijk scheidingsteken zoals komma, punt, puntkomma of dubbele punt, witruimte of een regeleinde volgen, geen letter. De aanwijzer gaat achter de maandnaam staan. De functie slaagt alleen als de naam bekend is en alle maandnamen in de lijst dezelfde taal gebruiken. |
| month_3(<column>, string) | Het waardetype van de kolom, de parameter <column>, moet een datum zijn. Wijst een maand met drie letters op de aanwijzerpositie aan de kolom toe. De parameter string bevat twaalf maandnamen van drie letters, gescheiden door spaties, bijvoorbeeld "jan feb mar apr may jun jul aug sep oct nov dec" voor Engels. Na de maandnaam moet een gebruikelijk scheidingsteken zoals komma, punt, puntkomma of dubbele punt, witruimte of een regeleinde volgen, geen letter. De aanwijzer gaat achter de naam staan. De functie slaagt alleen als de naam in de tekenreeks staat. |
| month_txt(<column>) | Het waardetype van de kolom, de parameter <column>, moet een datum zijn. Wijst de maandnaam op de aanwijzerpositie aan de kolom toe. Er kunnen meerdere talen worden ondersteund; momenteel is dat Duits. Na de naam moet een gebruikelijk scheidingsteken zoals komma, punt, puntkomma of dubbele punt, witruimte of een regeleinde volgen, geen letter. De aanwijzer gaat achter de naam staan. De functie slaagt alleen als de naam bekend is en alle maandnamen in de lijst dezelfde taal gebruiken. |
| month_txt(<column>, string) | Het waardetype van de kolom, de parameter <column>, moet een datum zijn. Wijst de maandnaam op de aanwijzerpositie aan de kolom toe. De parameter string bevat twaalf maandnamen, gescheiden door spaties, bijvoorbeeld "Jan. Feb. März Apr. Mai Juni Juli Aug. Sept. Okt. Nov. Dez." voor Duits. Na de naam moet een gebruikelijk scheidingsteken zoals komma, punt, puntkomma of dubbele punt, witruimte of een regeleinde volgen, geen letter. De aanwijzer gaat achter de naam staan. De functie slaagt alleen als de naam in de tekenreeks staat. |
| month(<column>) | Het waardetype van de kolom, de parameter <column>, moet een datum zijn. Wijst de maand als decimaal getal op de aanwijzerpositie aan de kolom toe. Na het getal moet een gebruikelijk scheidingsteken zoals komma, punt, puntkomma of dubbele punt, witruimte of een regeleinde volgen, geen letter. De aanwijzer gaat achter het getal staan. De functie slaagt alleen bij een getal van 1 tot 12. |
| day(<column>) | Het waardetype van de kolom, de parameter <column>, moet een datum zijn. Wijst de dag als decimaal getal op de aanwijzerpositie aan de kolom toe. Na het getal moet een gebruikelijk scheidingsteken zoals komma, punt, puntkomma of dubbele punt, witruimte of een regeleinde volgen, geen letter. De aanwijzer gaat achter het getal staan. De functie slaagt alleen bij een getal van 1 tot 31. |
| year(<column>) | Het waardetype van de kolom, de parameter <column>, moet een datum zijn. Wijst het jaar als decimaal getal op de aanwijzerpositie aan de kolom toe. Na het getal moet een gebruikelijk scheidingsteken zoals komma, punt, puntkomma of dubbele punt, witruimte of een regeleinde volgen, geen letter. De aanwijzer gaat achter het getal staan. De functie slaagt bij een getal van 0 tot 999 of 1602 tot 9999. Bij 0 tot 79 wordt 2000 opgeteld; bij 80 tot 999 wordt 1900 opgeteld. Zo betekent 107 het jaar 2007. |
| time(<column>) | Het waardetype van de kolom, de parameter <column>, moet een tijd zijn. Wijst uren, minuten en optioneel seconden en milliseconden als decimale getallen op de aanwijzerpositie aan de kolom toe. Ondersteunde indelingen zijn 00:00, 00:00:00 en 00:00:00.000. Een volgende a, am, p of pm wordt als a.m. of p.m. geïnterpreteerd en de tijd wordt aangepast. Daarna moet een gebruikelijk scheidingsteken zoals komma, punt, puntkomma of dubbele punt, witruimte of een regeleinde volgen, geen letter of cijfer. De aanwijzer gaat achter de tijd staan. De functie slaagt alleen bij een geldige tijd: bereiken 0-23, 0-59, 0-59 en 0-999. |
| year_or_time(<column_date>, <column_time>) | De kolommen met de parameters <column_date> en <column_time> moeten respectievelijk datum- en tijdwaarden bevatten. Wijst het jaar en optioneel de tijd, alleen uren en minuten, op de aanwijzerpositie aan de kolommen toe. Een jaar bestaat uit één decimaal getal; een tijd uit twee getallen gescheiden door :. Ondersteunt de gebruikelijke Unix-indeling: bij een jaar is de tijd onbekend; bij een tijd wordt het jaar uit de huidige datum berekend zodat de volledige datum niet ouder is dan zes maanden. Na de getallen moet een gebruikelijk scheidingsteken zoals komma, punt, puntkomma of dubbele punt, witruimte of een regeleinde volgen, geen letter. De aanwijzer gaat achter de waarde staan. De functie slaagt alleen bij een geldig jaar of tijdstip: 1602-9999 en 0-23:0-59. |
| all(number) | Slaat het opgegeven aantal tekens, de parameter number, over en verplaatst de aanwijzer erachter. De functie slaagt alleen als alle opgegeven tekens zijn overgeslagen. |
| all(<column>, number) | Het waardetype van de kolom, de parameter <column>, moet een tekenreeks zijn. Wijst de tekst vanaf de aanwijzer met het opgegeven aantal tekens, de parameter number, aan de kolom toe. De aanwijzer gaat achter die tekst staan. De functie slaagt alleen als zo’n tekenreeks bestaat. |
| all_to(string) | Zoekt zonder hoofdletteronderscheid naar de eerste overeenkomst met de parameter string en verplaatst de aanwijzer erachter. De functie slaagt alleen als de opgegeven tekst is gevonden. |
| all_to(<column>, string) | Het waardetype van de kolom, de parameter <column>, moet een tekenreeks zijn. Wijst de tekst vanaf de aanwijzer tot en met de eerste overeenkomst met de parameter string aan de kolom toe, zonder hoofdletteronderscheid. De aanwijzer gaat achter de gevonden tekst staan. De functie slaagt alleen als deze is gevonden. |
| all_up_to(<column>, string) | Het waardetype van de kolom, de parameter <column>, moet een tekenreeks zijn. Wijst de tekst vanaf de aanwijzer tot vóór de eerste overeenkomst met de parameter string aan de kolom toe, zonder hoofdletteronderscheid. De aanwijzer gaat achter de gevonden tekst staan. De functie slaagt alleen als deze is gevonden. |
| unix_link(<is_dir>, <column_name>, <column_link>) | De kolommen <column_name> en <column_link> moeten de typen Naam en Willekeurige Text hebben. Gebruikt de tekst vanaf de aanwijzer tot vóór het regeleinde en verplaatst de aanwijzer erachter. Verwacht de Unix-koppelingsnotatie "link_name -> target_name" of "link_name" als het doel ontoegankelijk is. Leest de naam en eventueel het doel van de koppeling en bepaalt of deze naar een bestand of map verwijst. De heuristiek: een extensie in naam of doel wijst op een bestand, anders op een map. Als dit niet past, kunt u bijvoorbeeld "assign(<is_dir>,false)" na unix_link toevoegen. Wijst de naam toe aan <column_name> en het doel, indien bekend, aan <column_link>. Wijst true toe aan <is_dir> voor een koppeling naar een map. De functie slaagt alleen als de tekst de verwachte indeling heeft en niet met witruimte begint. |
| unix_device(<column>) | Het waardetype van de kolom, de parameter <column>, moet een tekenreeks zijn. Wijst vanaf de aanwijzer tekst met twee decimale getallen, gescheiden door een komma en spaties, aan de kolom toe, bijvoorbeeld "27, 26". Daarna moet een gebruikelijk scheidingsteken zoals komma, punt, puntkomma of dubbele punt, witruimte of een regeleinde volgen, geen letter. De aanwijzer gaat achter de tekst staan. De functie slaagt alleen als de tekst is gevonden. |
| add_string_to_column(<column>, expression) | Het waardetype van de kolom, de parameter <column>, en het resultaattype van de uitdrukking, de parameter expression, moeten tekenreeksen zijn. Voegt het resultaat van de uitdrukking toe aan de kolom. |
| cut_white_spaces_end(<column>) | Het waardetype van de kolom, de parameter <column>, moet een tekenreeks zijn. Verwijdert witruimte aan het einde van de kolomtekst en wijst de nieuwe tekst aan de kolom toe. |
| cut_white_spaces_start(<column>) | Het waardetype van de kolom, de parameter <column>, moet een tekenreeks zijn. Verwijdert witruimte aan het begin van de kolomtekst en wijst de nieuwe tekst aan de kolom toe. |
| cut_white_spaces(<column>) | Het waardetype van de kolom, de parameter <column>, moet een tekenreeks zijn. Verwijdert witruimte aan het begin en einde van de kolomtekst en wijst de nieuwe tekst aan de kolom toe. |
| back(number) | Verplaatst de aanwijzer het opgegeven aantal tekens, de parameter number, terug. De functie slaagt alleen als dit mogelijk is. De aanwijzer kan niet naar de vorige regel gaan. |
| cut_end_of_string(<column>, number) | Het waardetype van de kolom, de parameter <column>, moet een tekenreeks zijn. Verwijdert het opgegeven aantal tekens, de parameter number, van het einde van de kolomtekst en wijst de nieuwe tekst aan de kolom toe. De functie slaagt alleen als de oorspronkelijke tekst minstens number tekens lang was. |
Toestandsvariabelen voor het ontleden
De volgende toestandsvariabelen zijn beschikbaar:
| Variabele | Beschrijving |
|---|---|
| first_nonempty_line | Booleaans; alleen true als de aanwijzer op de eerste niet-lege regel staat, dus een regel die niet uitsluitend witruimte bevat. |
| last_nonempty_line | Booleaans; alleen true als de aanwijzer op de laatste niet-lege regel staat, dus een regel die niet uitsluitend witruimte bevat. Houdt geen rekening met de volledigheid van de lijst. |
| next_char | Tekenreeks met het ene teken op de aanwijzerpositie. Aan het einde van de lijst is de tekenreeks leeg. |
| next_word | Tekenreeks vanaf de aanwijzer tot vóór de eerste witruimte of het regeleinde. |
| rest_of_line | Tekenreeks vanaf de aanwijzer tot vóór het regeleinde. |
Operatoren voor het ontleden
Voordat u een kolomidentificatie in een uitdrukking gebruikt, moet aan die kolom een waarde zijn toegewezen. Anders heeft de uitdrukking geen betekenis en kan deze worden vervangen door de booleaanse constante die met de lege standaardwaarde van de kolom wordt berekend.
De volgende operatoren zijn beschikbaar:
| Operator | Beschrijving |
|---|---|
| == | Gelijkheid; tekstvergelijking is hoofdlettergevoelig. |
| != | Ongelijkheid; tekstvergelijking is hoofdlettergevoelig. |
| eq | Gelijkheid van tekenreeksen; alleen voor tekenreeksen, zonder hoofdletteronderscheid. |
| not_eq | Ongelijkheid van tekenreeksen; alleen voor tekenreeksen, zonder hoofdletteronderscheid. |
| in | Zoeken naar een deeltekenreeks; alleen true als de linkeroperand in de rechteroperand voorkomt. De vergelijking is niet hoofdlettergevoelig. |
| not_in | Alleen true als de deeltekenreeks in de linkeroperand niet in de tekenreeks in de rechteroperand voorkomt. De vergelijking is niet hoofdlettergevoelig. |
| end_with | Alleen true als de tekenreeks in de linkeroperand eindigt op de deeltekenreeks in de rechteroperand. De vergelijking is niet hoofdlettergevoelig. |
| not_end_with | Alleen true als de tekenreeks in de linkeroperand niet eindigt op de deeltekenreeks in de rechteroperand. De vergelijking is niet hoofdlettergevoelig. |
Zie ook
Configuratie/Servers
Dialoogvenster Wijzig servertype
Dialoogvenster Nieuwe kolom/Wijzig kolom
Dialoogvenster Parser testen
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