Asp.net 具有多个参数的子字符串
我有一个下拉列表,其中有两列的值。。。一列是长度从5个字符到8个字符的数字,然后是空格,然后是“|”字符和另一个空格,后面是数字集的说明 例如:Asp.net 具有多个参数的子字符串,asp.net,drop-down-menu,substring,Asp.net,Drop Down Menu,Substring,我有一个下拉列表,其中有两列的值。。。一列是长度从5个字符到8个字符的数字,然后是空格,然后是“|”字符和另一个空格,后面是数字集的说明 例如: 12345678 | Description of Product 为了将dropdownlist的项目拉入我的数据库,我需要使用一个子字符串来仅拉出数字序列 是否可以写入子字符串以提取多个字符长度?(有时可能是6个数字,有时是5个数字,有时是8个数字,这取决于用户从下拉列表中选择的内容。)为此使用正则表达式 假设数字位于字符串的开头,则可以使用以
12345678 | Description of Product
为了将dropdownlist的项目拉入我的数据库,我需要使用一个子字符串来仅拉出数字序列
是否可以写入子字符串以提取多个字符长度?(有时可能是6个数字,有时是5个数字,有时是8个数字,这取决于用户从下拉列表中选择的内容。)为此使用正则表达式 假设数字位于字符串的开头,则可以使用以下命令:
^[0-9]+
用法:
var theNumbers = RegEx.Match(myDropdownValue, "^[0-9]+").Value;
如果您知道第一部分是您所需要的,并且始终是数字的,那么您也可以使用string.Split
来获得由|
分隔的部分:
var theNumbers = myDropdownValue.Split("| ".ToCharArray(),
StringSplitOptions.RemoveEmptyEntries)[0];
这两种方法中的任何一种都将产生一个字符串。您可以对结果使用
int.Parse
,以便从中获取整数。您应该使用Split函数,而不是使用substring
var words = phrase.Split(new string[] {" | "},
StringSplitOptions.RemoveEmptyEntries);
var number = word[0];
尝试使用正则表达式提取任意长度的数字序列的第一个匹配项。正则表达式看起来像“^\d+”——以任意数量的十进制数字开头。我就是这样做的
string str = "12345678 | Description of Product";
int delimiter;
delimiter = str.IndexOf("|") - 1;
string ID =str.substring(0, delimiter);
string desc = str.substring(delimiter + 1, str.length - 1);
我如何将其绑定到我的子字符串中?看起来是这样的:value.substring()会是value.substring^[0-9]+??@develophtstars吗?你不会。我建议您使用正则表达式而不是子字符串。O我看到了.NET的新功能,我还不完全熟悉正则表达式。谢谢@@develophtestors-给了您另一个选项。因此,如果我想获取描述部分,它应该是var theNumbers=myDropDownValue.Splist(“|”).tocharray(),StringSplitOptions.removemptyEntries)[0]?