2

子字符串可以有多个参数吗?我正在从下拉列表中将一个子字符串拉到我的数据库中以供记录,该字符串介于 6 到 8 个数字之间,是否可以传递多个参数来完成这项工作?

样本数据:

下拉列表

123456 | Name 
1234567 | Name 
12345678 | Name 

dt = ExecuteStoredProcedure(SqlConnection, "InsertData", "@name", ddlE_VN.SelectedValue.Substring(0, 6))
4

2 回答 2

3

根据您显示的数据,这应该有效:

ddlE_VN.SelectedValue.Substring(0, ddlE_VN.SelectedValue.IndexOf(' '))

我们从索引 0 开始我们的子字符串,这是第一个字符。如果空格是第六个字符,它的索引为 5,所以我们将返回前 5 个字符。如果空格是第 8 个字符,则索引为 7,因此我们将返回前 7 个字符,以此类推。

于 2012-05-17T12:59:25.807 回答
0

子字符串只能带一个开始参数并返回子字符串直到字符串的结尾。

如果您的子字符串用空格或其他字符分隔,您可以计算分隔符的索引并在子字符串中使用它。

像这样的东西:

string myString = "part1 part2 part3";

int firstSpace = myString.IndexOf(' ');
int secondSpace = myString.LastIndexOf(' ');

string part1 = myString.Substring(0, firstSpace).Trim();
string part2 = myString.Substring(firstSpace, secondSpace - firstSpace).Trim();
string part3 = myString.Substring(secondSpace).Trim();

当然,您也可以为此使用正则表达式,但由于您的示例数据并不复杂,我个人更喜欢这段代码。

于 2012-05-17T12:52:23.750 回答