conllu-stream
Version:
Using this module you can parse CoNLL-U files as a stream of sentence objects. You can also access the low-level line parser, if you want deeper control.
26 lines (21 loc) • 620 B
JavaScript
;
var querystring = require('querystring');
function parseField(value) {
value = value && value.trim();
return (value === '_' ? '' : value) || null;
}
function parseMap(value, separator) {
var map = querystring.parse(parseField(value), '|', separator);
for (var key in map) {
if (map[key] === 'Yes') {
map[key] = true;
} else if (map[key] === 'No') {
map[key] = false;
} else if (/,/.test(map[key])) {
map[key] = map[key].split(',');
}
}
return map;
}
exports.parse = parseField;
exports.parseMap = parseMap;