我正在尝试使用正则表达式来查找一段文本中的多音节词的数量,我的代码大部分时间都可以工作,但无法识别某些多音节词:
polySyllableCount = lWords2.replace(/(?:[^laeiouy\s]es|ed|[^laeiouy\s]e)$/, '');
是我用来计算音节的,并且
polySyllableCount = lWords2.replace(/^y/, '');
替换前导的 Y,因此它们不被计算在内,
最后:
try
{
polySyllables = polySyllableCount.match(/[aeiouy]\S[aeiouy]\S[aeiouy]/g).length;
}
catch(err)
{
console.log("No Poly Words")
}
计算多音节单词的数量。
我的思考过程是它会在一个(修改过的)单词中找到任何 3 个元音,由除空格以外的任何内容分隔,给我多音节词的数量