我正在使用HTML Agility Pack从HTML代码中获取图像源。
图片链接
http://www.example.com/images/item001_ZM80.jpg
我拍摄的每个图像链接(ZM80,ZM35)的值ZM80都会改变,这表示图像的缩放值。我想删除该值“_ZMxx”,其中xx可以是01到99
我想将存储在字符串变量中的链接连接到以下内容(删除“_ZM80”)
http://www.example.com/images/item001.jpg
有些情况下,网址是
http://www.example.com/images/item001_ZM80_AL30.jpg
在这种情况下,我也只想删除_ZM80
我能够获得变量中出现ZM的索引值。
int finalImage = imagestring.IndexOf("ZM");
答案 0 :(得分:1)
您可以使用Regex.Replace
方法。
<强> E.g。强>
string str = getUrl("http://www.example.com/images/item001_ZM80.jpg");
string str1 = getUrl("http://www.example.com/images/item001_ZM80_AL30.jpg");
public string getUrl(string url)
{
string result;
result = Regex.Replace(url, "_ZM(.{2})", "");
return result;
}
如果你不确定在_ZM之后可以有少于2位的字符,那么你可以使用以下功能来获取URL:
public string getUrl(string url)
{
string result;
string extension = System.IO.Path.GetExtension(url);
result = Regex.Replace(url, "_ZM(\\d{0,2})", "");
return result;
}
答案 1 :(得分:0)
int index = imagestring.IndexOf("ZM");
string number = imagestring.SubString(index + 2, imagestring.Length - (index + 6)); // index + 2 + ".jpg.length"
int imagenum = int.Parse(number);
string newImage = imagestring.Substring(0, index) + (imagenum + 1) + ".jpg";
答案 2 :(得分:0)
int percentIndex = imagestring.IndexOf("ZM");
if (percentIndex != -1)
{
imagestring = imagestring.Remove(percentIndex, 4);
}