好吧,我尽力得到这个字符串
"/i/models/fc6d6067621442ebb6f4238636363d47/textures?optimized=1"
但是我只需要获取数字之间的//并将其保存到字符串中,因为我打开的每个json文件都有不同数量的数字
我尝试使用正则表达式,但是它在文件中发现了不同的一致性,而我只需要与此行匹配的那个
该文件是json文件
https://i.imgur.com/B98gdBD.png
但不确定如何完成此操作
这是我尝试过的代码
List<string> found = new List<string>();
string line;
using (StreamReader file = new StreamReader(Application.StartupPath + "\\textures.json"))
{
while ((line = file.ReadLine()) != null)
{
if (line.Contains("textures?optimized=1"))
{
texturemodel = line;
}
}
}
此代码确实有效,并且确实获得了我所拥有的仅一行问题;}在其末尾,因此它几乎可以正常工作,但不确定如何在开始处删除空格;在{文件结尾,空格位于文件开头
预先感谢elfenliedtopfan5
答案 0 :(得分:1)
如果您确定那个始终是格式,请尝试string.Split()
var stringWithJumbledNumbersAndLetters = "/i/models/fc6d6067621442ebb6f4238636363d47/textures?optimized=1";
var splitString = stringWithJumbledNumbersAndLetters.Split('/');
//splitString[0] = i;
//splitString[1] = models;
//splitString[2] = fc6d6067621442ebb6f4238636363d47;
//splitString[3] = textures?optimized=1;
return splitString[2];
或直接将是
var stringWithJumbledNumbersAndLetters = "/i/models/fc6d6067621442ebb6f4238636363d47/textures?optimized=1";
return stringWithJumbledNumbersAndLetters.Split('/')[2];
答案 1 :(得分:0)
String s = "/i/models/fc6d6067621442ebb6f4238636363d47/textures?optimized=1";
String[] result = s.split("/");
System.out.println(result[3]);