2013-10-08 4 views
2

Я только что использовал iTextSharp, чтобы получить весь текст из pdf, и теперь мне нужно разбить этот текст на слова. Я использовал библиотеку Acrobat, которая автоматически делила ее на слова (используя getPageNthWord()).Разделить текст на слова: Сепараторы

Я не знаю, какие критерии используются, но теперь мне нужно знать, как разделить текст на слова. Я разделил текст на разных языках, поэтому мне нужно разделить на все возможные разделители.

Я видел метод Char.IsSeparator(), но используя этот средний цикл для каждого символа, который будет неэффективным.

То, что я получил до сих пор вручную указать разделители для использования в .Split():

separators = " .,;:-(){}[]/\'""?¿!¡" & Convert.ToChar(9) & NewLine() 

Существует какое-то место для получения общих символов разделителей?

+3

По крайней мере, на западных языках разделителем слов является «». Вы также можете добавить несколько знаков препинания («.», «,», «:», «;»), Просто для учета любого сценария (неправильно написанный текст), но я не думаю, что вы должны рассмотреть больше, чем что. В противном случае вы можете начать «переразделять»; например: «-» (или «» «» или ...) необязательно указывают два разных слова. – varocarbas

+1

Сначала попробуйте просмотреть образец по адресу http://msdn.microsoft.com/en-us/library/cta536cf.aspx. Во-вторых, может быть string.Split (null) будет удовлетворительным? – Vladimir

+0

@ Владымир Фролов Оба комментария должны быть ответами, ИМХО. '.Split (null)' [использовать только разделители пробелов] (http://msdn.microsoft.com/en-us/library/b873y76a.aspx), но, как вы указали, очень похож на 'Char.IsSeparator() '. – SysDragon

ответ

2

Вы можете использовать string.Split method с нулевым параметром:

Если параметр Сепаратор является нулевым или не содержит символы, пробельные символы считаются разделителями. Символы белого пространства определяются стандартом Unicode и возвращают true, если они передаются методу Char.IsWhiteSpace.

Или вы можете следовать MSDN sample и получить все char.IsSeparator() символов.

Смежные вопросы