Как избежать раскола? - PullRequest
3 голосов
/ 16 июня 2011

У меня есть этот текст в документе: "50%"; когда я запускаю эту функцию, она просто возвращает «50» и после этого возвращает «%». Я не знаю, почему он разделяет 50% ... Подскажите, пожалуйста, как мне избежать такого поведения, чтобы получить полное слово "50%" вместо "50" и "%"?

int astart = 0;
int aend = Doc.Content.End;

//docwords.Words = '50%'
Range docwords = Doc.Range(ref astart, ref aend);

foreach (Range word in docwords.Words)
{
    // here first return "50" and after return "%"
    String wordText = word.Text;
}

1 Ответ

1 голос
/ 16 июня 2011

Я предполагаю, что вы используете Office10 и Word API. На основании этого @Richard правильно. Слова разбиты пунктуацией, пробелом или в начале или в конце строки.

Если вы хотите избежать разделения, вам лучше выбрать слова, используя коллекцию RegEx и Matches. Что-то вроде Regex.Matches(Document.Text, @"[A-Za-z0-9]+") может помочь. (И поставьте нужную пунктуацию в квадратные скобки.

...