compromise
Version:
natural language processing in the browser
179 lines (177 loc) • 2.53 kB
JavaScript
module.exports = [
{
reg: /(eave)$/i,
repl: {
pr: '$1s',
pa: '$1d',
gr: 'eaving',
ar: '$1r'
}
},
{
reg: /(ink)$/i,
repl: {
pr: '$1s',
pa: 'unk',
gr: '$1ing',
ar: '$1er'
}
},
{
reg: /(end)$/i,
repl: {
pr: '$1s',
pa: 'ent',
gr: '$1ing',
ar: '$1er'
}
},
{
reg: /(ide)$/i,
repl: {
pr: '$1s',
pa: 'ode',
gr: 'iding',
ar: 'ider'
}
},
{
reg: /(ake)$/i,
repl: {
pr: '$1s',
pa: 'ook',
gr: 'aking',
ar: '$1r'
}
},
{
reg: /(eed)$/i,
repl: {
pr: '$1s',
pa: '$1ed',
gr: '$1ing',
ar: '$1er'
}
},
{
reg: /(e)(ep)$/i,
repl: {
pr: '$1$2s',
pa: '$1pt',
gr: '$1$2ing',
ar: '$1$2er'
}
}, {
reg: /(a[tg]|i[zn]|ur|nc|gl|is)e$/i,
repl: {
pr: '$1es',
pa: '$1ed',
gr: '$1ing',
prt: '$1en'
}
}, {
reg: /([i|f|rr])y$/i,
repl: {
pr: '$1ies',
pa: '$1ied',
gr: '$1ying'
}
}, {
reg: /([td]er)$/i,
repl: {
pr: '$1s',
pa: '$1ed',
gr: '$1ing'
}
}, {
reg: /([bd]l)e$/i,
repl: {
pr: '$1es',
pa: '$1ed',
gr: '$1ing'
}
}, {
reg: /(ish|tch|ess)$/i,
repl: {
pr: '$1es',
pa: '$1ed',
gr: '$1ing'
}
}, {
reg: /(ion|end|e[nc]t)$/i,
repl: {
pr: '$1s',
pa: '$1ed',
gr: '$1ing'
}
}, {
reg: /(om)e$/i,
repl: {
pr: '$1es',
pa: 'ame',
gr: '$1ing'
}
}, {
reg: /([aeiu])([pt])$/i,
repl: {
pr: '$1$2s',
pa: '$1$2',
gr: '$1$2$2ing'
}
}, {
reg: /(er)$/i,
repl: {
pr: '$1s',
pa: '$1ed',
gr: '$1ing'
}
}, {
reg: /(en)$/i,
repl: {
pr: '$1s',
pa: '$1ed',
gr: '$1ing'
},
},
{
reg: /(..)(ow)$/i,
repl: {
pr: '$1$2s',
pa: '$1ew',
gr: '$1$2ing',
prt: '$1$2n'
}
},
{
reg: /(..)([cs]h)$/i,
repl: {
pr: '$1$2es',
pa: '$1$2ed',
gr: '$1$2ing'
},
},
{
reg: /([^aeiou][ou])(g|d)$/i,
repl: {
pr: '$1$2s',
pa: '$1$2$2ed',
gr: '$1$2$2ing'
},
},
{
reg: /([^aeiou][aeiou])(b|t|p|m)$/i,
repl: {
pr: '$1$2s',
pa: '$1$2$2ed',
gr: '$1$2$2ing'
},
},
{
reg: /([aeiou]zz)$/i,
repl: {
pr: '$1es',
pa: '$1ed',
gr: '$1ing'
}
}
];