compromise
Version:
natural language processing in the browser
31 lines (28 loc) • 657 B
JavaScript
;
const rules = require('./data/rules');
const mapping = {
pr: 'PresentTense',
pa: 'PastTense',
gr: 'Gerund',
prt: 'Participle',
ar: 'Actor',
};
const keys = Object.keys(mapping);
//check suffix rules
const suffixPass = function(inf) {
let found = {};
for(let i = 0; i < rules.length; i++) {
if (inf.match(rules[i].reg)) {
let obj = rules[i].repl;
for(let o = 0; o < keys.length; o++) {
if (obj[keys[o]]) {
let key = mapping[keys[o]];
found[key] = inf.replace(rules[i].reg, obj[keys[o]]);
}
}
return found;
}
}
return found;
};
module.exports = suffixPass;