从格式化字符串中提取数字(下拉列表)

时间:2015-05-06 15:27:34

标签: c#

所以我试图使用子字符串从字符串中提取整数(来自dropdownlist的selectedtext)。数字在括号之间,这是我的代码,但它一直说长度不能为零,我猜这意味着它找不到括号,即使它们在那里。我的下拉列表中的值的示例是Test(99)或Teehee(1)

int selectedValue = int.Parse(values.SelectedText.Substring(values.SelectedText.IndexOf("(") + 1, values.SelectedText.IndexOf(")") - values.SelectedText.IndexOf("(") - 1)));

2 个答案:

答案 0 :(得分:2)

您应该使用正则表达式。

模式演示

https://regex101.com/r/gH3xK2/1

<强>模式

\(([^)]*)\)

使用示例

  Regex.Match("Test(99)", @"\(([^)]*)\)").Groups[1].Value

答案 1 :(得分:0)

如果您的号码始终是整数,则可以使用Regex

var resultNumber = Regex.Match(values.SelectedText, @"\d+").Value;

然后使用int.parse