C# 在字符串中查找模式
在任何给定字符串中查找模式“[Number1,Number2]”,并获取Number1和Number2的整数(32位)值: 输入示例:“Foo-Bar[45,66]Bash” 示例结果: 数字1=45 数字2=66C# 在字符串中查找模式,c#,regex,asp.net-mvc-3,webforms,C#,Regex,Asp.net Mvc 3,Webforms,在任何给定字符串中查找模式“[Number1,Number2]”,并获取Number1和Number2的整数(32位)值: 输入示例:“Foo-Bar[45,66]Bash” 示例结果: 数字1=45 数字2=66 我在deitel的书中有这个例子,但我似乎无法获得正确的正则表达式语法。有人能帮我吗?这应该适用于您的[number,number]: var match = Regex.Match(input, @"\[(\d+),(\d+)\]"); var first = match.Gro
我在deitel的书中有这个例子,但我似乎无法获得正确的正则表达式语法。有人能帮我吗?这应该适用于您的
[number,number]
:
var match = Regex.Match(input, @"\[(\d+),(\d+)\]");
var first = match.Groups[1].Value;
var second = match.Groups[2].Value;
var result = string.Format("Number1={0} Number2={1}", first, second);
已测试。这应该适用于您的确切情况
[数字,数字]
:
var match = Regex.Match(input, @"\[(\d+),(\d+)\]");
var first = match.Groups[1].Value;
var second = match.Groups[2].Value;
var result = string.Format("Number1={0} Number2={1}", first, second);
已测试。正则表达式。。。他们现在很有帮助。然而,在该标准出台之前,程序员没有机会在StackOverflow上请求社区支持。事实上许多程序员在当天尝试执行简单的字符串搜索时遇到“堆栈溢出” 如果您想在字符串中查找带有的字符串,但无法使用正则表达式,则必须以非常特定的方式在字符串中搜索表达式。字符串是以null结尾的字符数组。该构造是通过string类实现的,但在后台它是一个字符数组,在最后位置有一个空值 假设您有以下字符串:
string arrayOfCharactersToSearch = "This is the null terminated array of characters to search.";
现在假设您希望搜索该字符串中的“array”。您必须检查字符串中字符的“块”。但你不能一次只移动一个字符,然后寻找“数组”,因为这样做效率很低。您也不能通过查看与“array”长度相同的块来完成,因为它可能会丢失字符组合
解决方案是将每个“块”按搜索条件的长度推进,在本例中为“数组”,除以2,再加上1:
*chunk = ( string length / 2 ) + 1*
幸运的是,我们现在有了正则表达式,所有的BS都是在幕后为我们做的,但是理解它是如何工作的仍然很重要。。。右???正则表达式。。。他们现在很有帮助。然而,在该标准出台之前,程序员没有机会在StackOverflow上请求社区支持。事实上许多程序员在当天尝试执行简单的字符串搜索时遇到“堆栈溢出” 如果您想在字符串中查找带有的字符串,但无法使用正则表达式,则必须以非常特定的方式在字符串中搜索表达式。字符串是以null结尾的字符数组。该构造是通过string类实现的,但在后台它是一个字符数组,在最后位置有一个空值 假设您有以下字符串:
string arrayOfCharactersToSearch = "This is the null terminated array of characters to search.";
现在假设您希望搜索该字符串中的“array”。您必须检查字符串中字符的“块”。但你不能一次只移动一个字符,然后寻找“数组”,因为这样做效率很低。您也不能通过查看与“array”长度相同的块来完成,因为它可能会丢失字符组合
解决方案是将每个“块”按搜索条件的长度推进,在本例中为“数组”,除以2,再加上1:
*chunk = ( string length / 2 ) + 1*
幸运的是,我们现在有了正则表达式,所有的BS都是在幕后为我们做的,但是理解它是如何工作的仍然很重要。。。对???他还需要整数值…通过
int.Parse
运行它。他还需要整数值…通过int.Parse
运行它。