我在文件中有这样的文字:“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;
}
答案 0 :(得分:1)
我假设你正在使用Office10和Word API。基于此@Richard是正确的。单词被标点符号,空格或位于行的开头或结尾处打破。
如果您想避免分割,最好使用RegEx和Matches集合选择单词。像Regex.Matches(Document.Text, @"[A-Za-z0-9]+")
这样的东西可能会有所帮助。 (并将你想要的标点符号放在方括号中。