public Normalize ( char s, int len ) : int | ||
s | char | input buffer |
len | int | length of input buffer |
return | int |
public int Normalize(char[] s, int len)
{
for (int i = 0; i < len; i++)
{
switch (s[i])
{
case ALEF_MADDA:
case ALEF_HAMZA_ABOVE:
case ALEF_HAMZA_BELOW:
s[i] = ALEF;
break;
case DOTLESS_YEH:
s[i] = YEH;
break;
case TEH_MARBUTA:
s[i] = HEH;
break;
case TATWEEL:
case KASRATAN:
case DAMMATAN:
case FATHATAN:
case FATHA:
case DAMMA:
case KASRA:
case SHADDA:
case SUKUN:
len = Delete(s, i, len);
i--;
break;
default:
break;
}
}
return len;
}
public override bool IncrementToken() { if (input.IncrementToken()) { int newlen = normalizer.Normalize(termAtt.TermBuffer(), termAtt.TermLength()); termAtt.SetTermLength(newlen); return(true); } return(false); }