c# 获取文字 在字符串的多个位置
时间: 2024-01-26 14:04:08 浏览: 171
你可以使用以下代码来获取在字符串中出现指定文字的所有位置:
```csharp
string text = "hello world, hello universe";
string search = "hello";
List<int> positions = new List<int>();
int index = 0;
while ((index = text.IndexOf(search, index)) != -1)
{
positions.Add(index);
index += search.Length;
}
foreach (int position in positions)
{
Console.WriteLine(position);
}
```
在上面的示例中,我们首先定义了一个字符串 `text` 和要搜索的文字 `search`。然后我们创建了一个 `List<int>` 类型的变量 `positions` 来存储出现位置。
接下来我们使用 `IndexOf` 方法来查找 `search` 在 `text` 中的位置。由于 `IndexOf` 方法会返回第一次出现的位置,因此我们需要在每次找到一个位置后将 `index` 增加 `search.Length`,以避免重复查找。
最后我们遍历 `positions` 变量并输出每个位置。
阅读全文