用于从字符串获取分辨率的C#正则表达式模式
我是C#的新手,我有以下字符串,想从中提取分辨率字符串可以是任意长度 e、 g 或 我想用正则表达式在两个不同的变量中提取用于从字符串获取分辨率的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
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);
}