Sto provando a dividere una frase/frase in una parola usando Regex.Come si divide una frase in parole usando Regex in C#
var phrase = "This isn't a test.";
var words = Regex.Split(phrase, @"\W+").ToList();
parole contiene "Questa", "isn", "t", "a", "test"
Ovviamente è raccogliendo l'apostrofo e frazionamento su questo. Posso cambiare questo comportamento? Deve anche essere multilingue che supporta una varietà di lingue (spagnolo, francese, russo, coreano, ecc ...).
Ho bisogno di passare le parole in un correttore ortografico. Nello specifico Nhunspell.
return (from word in words let correct = _engine[langId].Spell(word) where !correct select word).ToList();
Provare a dividere gli spazi invece? Avete un buon esempio di casi d'uso per dimostrare cosa deve gestire questo Regex? – mellamokb
Sto passando le parole in un correttore ortografico, quindi ho bisogno di perdere la punteggiatura. – Dean
Dato che si desidera dividere per un certo numero di lingue diverse, è necessario utilizzare un tokenizer che comprenda le suddette lingue. Nel tuo esempio, non è chiaramente una parola, ma in un'altra lingua il 'potrebbe normalmente non far parte della parola. La maggior parte delle librerie di controllo ortografico sono quindi dotate di Tokenizer o Parser che può fare questo lavoro per te. – jessehouwing