字符串函数

时间:2009-03-24 18:31:11

标签: c# string

我想在另一个字符串中搜索一个给定的字符串(例如,在“类似这样的东西”中找到“something”。我该怎么做?:

  1. 知道“某物”的位置(在curr中。例如,这是= 0。
  2. 将所有内容提取到左侧或右侧,直到char。发现(见1)。
  3. 提取一个子字符串beggining找到找到的字符串,一直到X个字符数量(在Visual Basic 6 / VBA中我会使用Mid函数)。

6 个答案:

答案 0 :(得分:10)

string searched = "something like this";

1

int pos = searched.IndexOf("something");

2

string start = searched.Substring(0, pos);
string endstring = searched.Substring(pos);

3

string mid = searched.Substring(pos, x);

答案 1 :(得分:1)

你看过String.SubString()方法了吗?您可以使用IndexOf()方法查看子字符串是否首先存在。

答案 2 :(得分:0)

查看System.String成员函数,尤其是IndexOf方法。

答案 3 :(得分:0)

答案 4 :(得分:0)

我会做这样的事情:

string s = "I have something like this";

//question No. 1
int pos = s.IndexOf("something");  

//quiestion No. 2
string[] separator = {"something"};
string[] leftAndRightEntries = s.Split(separator, StringSplitOptions.None);  

//question No. 3

int x = pos + 10;
string substring = s.Substring(pos, x);

答案 5 :(得分:0)

我会避免使用Split,因为它旨在为您提供多个结果。我会坚持使用第一个例子中的代码,尽管第二个块应该实际读取...

string start = searched.Substring(0, pos);
string endstring;

if(pos < searched.Length - 1)
endstring = searched.Substring(pos + "something".Length);
else
endstring = string.Empty

关键区别在于要找到要查找的字符串的长度(因此看起来很奇怪的“某事”.Length,因为这个例子是为了能够在你自己的变量中设置的。)