什么';这是从resx&x27;中提取区域性信息的最有效方法;s文件名是否为c#?
使用C#从resx文件名中提取区域性信息的最有效方法是什么?该解决方案还应处理文件名中没有区域性信息的情况(即form1.resx)。在这种情况下,应返回指定为“Default”的字符串。您的最佳选择就是使用正则表达式:什么';这是从resx&x27;中提取区域性信息的最有效方法;s文件名是否为c#?,c#,string,C#,String,使用C#从resx文件名中提取区域性信息的最有效方法是什么?该解决方案还应处理文件名中没有区域性信息的情况(即form1.resx)。在这种情况下,应返回指定为“Default”的字符串。您的最佳选择就是使用正则表达式: string ParseCulture(string input) { var r = Regex.new('[\w\d]+\.([\w\-]+)\.resx') // Match the regular expression pattern against a tex
string ParseCulture(string input)
{
var r = Regex.new('[\w\d]+\.([\w\-]+)\.resx')
// Match the regular expression pattern against a text string.
Match m = r.Match(input);
if (m.Success)
{
return m.Groups[1];
}
else
{
return "Default";
}
}
这将返回一个匹配项(您正在查找的短语作为匹配项),或者没有匹配项(这意味着您应该使用“默认值”)。这似乎是可行的:
string GetCulture(string s)
{
var arr=s.Split(".");
if(arr.Length>2)
return arr[1];
else
return "Default";
}
你想在请求的时候把它拔出来吗?或者这只是一个简单的字符串操作(如标签所示)?我应该补充一点,我不知道句点之间包含哪个区域性。基本上,如果有一个,那么我需要抓取它,否则返回“Default”。aronchick-只是字符串操作。对不起,我问得不好。我不知道到底哪种文化会出现,我只需要抓住它,如果它是在两个时期之间。