子字符串可以有多个参数吗?我将下拉列表中的子字符串拉入我的数据库中以获取记录,字符串介于6到8个数字之间,是否可以传递多个参数以使其工作?
示例数据:
DropDownList
123456 | Name
1234567 | Name
12345678 | Name
dt = ExecuteStoredProcedure(SqlConnection, "InsertData", "@name", ddlE_VN.SelectedValue.Substring(0, 6))
答案 0 :(得分:3)
根据您显示的数据,这应该有效:
ddlE_VN.SelectedValue.Substring(0, ddlE_VN.SelectedValue.IndexOf(' '))
我们在索引0处开始我们的子串,这是第一个字符。如果空格是第六个字符,它的索引为5,所以我们将返回前5个字符。如果空格是第八个字符,它的索引值为7,所以我们将返回前7个字符等。
答案 1 :(得分:0)
Substring只能接受一个start参数并返回子字符串直到字符串结尾。
如果您的子字符串用空格或其他字符分隔,您可以计算分隔符的索引并在子字符串中使用它。
这样的事情:
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();
当然,您也可以使用正则表达式,但由于您的示例数据并不复杂,我个人更喜欢这段代码。