sovabids.parsers
¶
Module with parser utilities.
Module Contents¶
Functions¶
|
Translate a placeholder pattern to a regex pattern. |
|
Parse string from a placeholder pattern. |
|
Parse string from regex pattern. |
|
Get the value of a bids-entity from a path. |
|
Convert between sovabids entities pattern notation and the shorter notation. |
|
Get the bids entities from a bidspath. |
|
Get the path pattern from a path and a dictionary of bids entities and their values. |
- sovabids.parsers.placeholder_to_regex(placeholder, encloser='%', matcher='(.+)')[source]¶
Translate a placeholder pattern to a regex pattern.
- Parameters
placeholder (str) – The placeholder pattern to translate.
matcher (str, optional) – The regex pattern to use for the placeholder, ie : (.*?),(.*),(.+).
encloser (str, optional) – The symbol which encloses the fields of the placeholder pattern.
- Returns
pattern (str) – The regex pattern.
fields (list of str) – The fields as they appear in the regex pattern.
- sovabids.parsers.parse_from_placeholder(string, pattern, encloser='%', matcher='(.+)')[source]¶
Parse string from a placeholder pattern.
- Parameters
string (str) – The string to parse.
pattern (str) – The placeholder pattern to use for parsing.
matcher (str, optional) – The regex pattern to use for the placeholder, ie : (.*?),(.*),(.+).
encloser (str, optional) – The symbol which encloses the fields of the placeholder pattern.
- Returns
The dictionary with the fields and values requested.
- Return type
dict
- sovabids.parsers.parse_from_regex(string, pattern, fields)[source]¶
Parse string from regex pattern.
- Parameters
string (str) – The string to parse.
pattern (str) – The regex pattern to use for parsing.
fields (list of str) – List of fields in the same order as they appear in the regex pattern.
- Returns
The dictionary with the fields and values requested.
- Return type
dict
- sovabids.parsers.parse_entity_from_bidspath(path, entity, mode='r2l')[source]¶
Get the value of a bids-entity from a path.
- Parameters
path (str) – The bidspath we are going to derive the information on. Should be the complete path of file of a modality (ie an _eeg file).
entity (str) – The entity we are going to extract. SHOULD be one of sub|ses|task|acq|run
mode (str) – Direction of lookup. One of r2l|l2r . r2l (right to left) l2r (left to right)
- Returns
value – The extracted value of the entity as a string. If None, it means the entity was not found on the string.
- Return type
str
- sovabids.parsers._modify_entities_of_placeholder_pattern(pattern, mode='append')[source]¶
Convert between sovabids entities pattern notation and the shorter notation.
The shorter notation is: %dataset%, %task%, %session%, %subject%, %run%, %acquisition%
- Parameters
string (str) – The pattern string to convert.
mode (str) – Whether to append ‘entities’ or cut it. One of {‘append’,’cut’}
- Returns
The converted pattern string.
- Return type
str
- sovabids.parsers.parse_entities_from_bidspath(targetpath, entities=['sub', 'ses', 'task', 'acq', 'run'], mode='r2l')[source]¶
Get the bids entities from a bidspath.
- Parameters
targetpath (str) – The bidspath we are going to derive the information on.
entities (list of str) – The entities we are going to extract. Defaults to sub,ses,task,acq,run
mode (str) – Direction of lookup. One of r2l|l2r . r2l (right to left) l2r (left to right)
- Returns
A dictionary with the extracted entities. {‘sub’:’11’,’task’:’resting’,’ses’:’V1’,’acq’:’A’,’run’:1}
- Return type
dict
- sovabids.parsers.parse_path_pattern_from_entities(sourcepath, bids_entities)[source]¶
Get the path pattern from a path and a dictionary of bids entities and their values.
- Parameters
sourcepath (str) – The sourcepath that will be modified to get the path pattern
bids_entities (dict) – Dictionary with the entities and their values on the path. Ie {‘sub’:’11’,’task’:’resting’,’ses’:’V1’,’acq’:’A’,’run’:1} There should be no ambiguity between the sourcepath and each of the values. Otherwise an error will be raised.
- Returns
The path pattern in placeholder format
- Return type
str