Vítejte na stránkách věnovaných nástroji OpenRefine,
na kterých najdete všechny potřebné a důležité informace.
openrefine@getfound.cz

Ostatní funkce (Other functions)

0 Sdílení 0 Sdílení ×

type(o)

Návratovou hodnotou je typ o (number, string,…).

hasField(o, string name)

Návratovou hodnotou je informace, zda o obsahuje pole, které se nazývá name. Například cell.hasField(“value”) vrací vždy TRUE, jelikož každá buňka má hodnotu.

jsonize(value)

Převede výstup vložené hodnoty na JSON literál.

parseJson(string s)

Parsuje JSON řetězec s. K získání dat může být využit i v kombinaci s funkcí get. Například: parseJson(" { 'test' : 1 } ").get(“test”) jejíž návratovou hodnotou bude 1.

V případě, že potřebujete z JSON výstupu získat více proměnných, je potřeba k nim buď přistupovat jednotlivě nebo projít výstup pomocí funkce forEach(). Konkrétní příklad:

{
"status":"OK",
"language":"czech",
"keywords":[
{
"text":"Příklad1",
},
{
"text":"Příklad2",
},
{
"text":"Příklad3",
}
] }

GREL výraz:

forEach(value.parseJson().keywords,v,v.text).join("::"), jehož výstupem bude Příklad1::Příklad2::Příklad3.

 

cross(cell c, string projectName, string columnName)

Návratovou hodnotou je pole 0 a více řádků z projektu projectName, pro které má sloupec columnName stejný obsah, jako buňka c. Jedná se tedy o získávání dat na základě shody buněk se sloupcem z jiného projektu.

Pojďme si to ukázat na konkrétním příkladu. Uvažujte následující datasety v projektech:

 

Projekt: Věková kategorie

Jméno a příjmení

Věk

Filip

23

Adam

28

Petr

30

 

Projekt: Bydliště účastníků

Jméno

Bydliště

Adam

Praha

Filip

Zbečník

Honza

Opava

 

Pokud v projektu Bydliště účastníků zadáte u sloupce Jméno Edit cells -> Add column based on this column a vložíte následující GREL výraz: cell.cross("Věková kategorie", "Jméno a příjmení")[0].cells[“Věk"].value[0], dostanete následující výstup:

 

Projekt: Bydliště účastníků

Jméno

Bydliště

Věk

Adam

Praha

28

Filip

Zbečník

23

facetCount(choiceValue, string facetExpression, string columnName)

Návratovou hodnotou facetCount je počet shod, odpovídajících zadanému výrazu. Uvažujme následující příklad:

 

Dárek

Hodné dítě

Lego

Pepik

Traktůrek

Fanda

Autíčko

Pepik

Ponožky

Péťa

 

Pokud bychom chtěli zjistit, které z dětí dostalo kolik dárku, vytvoříme si na to jednoduchý facet do nového sloupce. Výraz by vypadal následovně: facetCount(value, "value", "Hodné dítě"). Výstup by poté vypadal následovně:

 

Dárek

Hodné dítě

Count

Lego

Pepik

2

Traktůrek

Fanda

1

Autíčko

Pepik

2

Ponožky

Péťa

1

 

Parsování HTML

parseHtml(string s)

Navrací celý HTML dokument a doplňuje uzavírací tagy tam, kde ve zdrojovém kódu chybí.

Často se používá ve spojení s funkcí select(), která vám umožní získávat pouze konkrétní části HTML dokumentu.

select(Element e, String s)

Návratovou hodnotou select je konkrétní element HTML za použití selektoru nebo syntaxe k jeho specifikaci.Více informací o selector-syntax naleznete zde.

htmlAttr(Element e, String s)

Návratovou hodnotou je atribut HTML elementu.

htmlText(Element e)

Návratovou hodnotou je text uvnitř HTML elementu.

innerHtml(Element e)

Návratovou hodnotou je innerHTML daného HTML elementu.

outerHtml(Element e)

Návratovou hodnotou je outerHTML daného HTML elementu (tedy jak obsah, tak počateční a ukončovací tag).

ownText(Element e)

Návratovou hodnotou je pouze text, příslušející danému HTML elementu (ne obsah potomků elementu).

 

© 2013 Openrefine
0 Sdílení Twitter 0 Google+ 0 Facebook 0 0 Sdílení ×