Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于从字符串获取分辨率的C#正则表达式模式_C#_Regex_String - Fatal编程技术网

用于从字符串获取分辨率的C#正则表达式模式

用于从字符串获取分辨率的C#正则表达式模式,c#,regex,string,C#,Regex,String,我是C#的新手,我有以下字符串,想从中提取分辨率字符串可以是任意长度 e、 g 或 我想用正则表达式在两个不同的变量中提取1100和1200 谢谢 试试这个。抓拍。看演示 使用下面的正则表达式并从组索引1和2中获取分辨率值 @"(\d+)x(\d+)" 只有在后跟@符号时,才可以添加“前瞻”以检查与分辨率的匹配 @"(\d+)x(\d+)(?=@)" 我尝试了您的建议,但它返回@60,而不是1100和1200,我是按照private static readonly Regex Resolu

我是C#的新手,我有以下字符串,想从中提取分辨率字符串可以是任意长度

e、 g

我想用正则表达式在两个不同的变量中提取
1100
1200

谢谢

试试这个。抓拍。看演示


使用下面的正则表达式并从组索引1和2中获取分辨率值

@"(\d+)x(\d+)"
只有在后跟
@
符号时,才可以添加“前瞻”以检查与分辨率的匹配

@"(\d+)x(\d+)(?=@)"


我尝试了您的建议,但它返回@60,而不是1100和1200,我是按照private static readonly Regex ResolutionPartRegex=new Regex(@“(\d+)x(\d+);分辨率=”1100x1200@60“var width=resolution.Substring(ResolutionPartRegex.Match(resolution.Length));它对我有用。请参阅ideone链接。您需要打印组索引1和2,而不是索引0。我创建了应用程序并尝试了,但它没有返回相同的结果。你能把代码贴出来吗?代码在ideone链接上。你能提供准确的信息吗?或者在ideone中发布您的代码,然后将链接发送回我。我尝试过,现在它可以工作了。:)但是当我发布相同的字符串,即@“(\d+)”x(\d+(=@)”时,它就不起作用了
([^x]+)x([^@]+)
@"(\d+)x(\d+)"
@"(\d+)x(\d+)(?=@)"
String input = @"1100x1200@60";
Regex rgx = new Regex(@"(\d+)x(\d+)(?=@)");
foreach (Match m in rgx.Matches(input))
{
String var1 = m.Groups[1].Value;
String var2 = m.Groups[2].Value;
Console.WriteLine(var1);
Console.WriteLine(var2);
}