这是我的猪皮翻译程序代码的一部分,所以我为我的句子创建了一个标点符号,但是当我编译时它显示了句子中的额外位置。所以我这样做:
private bool isPunctuation(string noo)
{
int pos = 1;
string punctuation = ",.!?";
pos = punctuation.IndexOf(' ');
while (pos >= 0)
{
pos = punctuation.IndexOf(' ', pos + 1);
//return false;
}
return true;
}
它仍然显示额外的空间。我需要在此代码中更改什么?
答案 0 :(得分:5)
目前尚不清楚你是如何尝试使用你的方法的,但是:
noo
)此代码:
string punctuation = ",.!?";
pos = punctuation.IndexOf(' ');
...始终将pos
保留为-1,因为",.!?"
不包含空格
您的方法仅可以通过例外或返回true
退出;由于false
语句已被注释掉,因此无法返回return false;
。 (如果没有注释,你就会得到一个非常奇怪的while
循环......)你打算如何使用它?
从根本上说,在我看来,你需要退后一步。想想为什么你想要这样一个方法(它不清楚它与替换问题标题的一部分有什么关系)以及它应该如何表现。