我有一个字符串:
"ImageDimension=655x0;ThumbnailDimension=0x0".
我需要提取从 "ImageDimension=" 到第一个出现的"x"之间的第一个数字 ("655" 字符串); 还需要提取在 "ImageDimension=" 字符串后第一次出现的 "x" 后面的第二个数字 ("0" 字符串)。类似地,提取第三个和第四个数字。
可以使用正则表达式 ("ImageDimension=? x ?;ThumbnailDimension=? x ?")来完成这个任务吗?而不是使用笨重的子字符串和indexOf?谢谢!
我的解决方案并不好:
"ImageDimension=655x0;ThumbnailDimension=0x0".
我需要提取从 "ImageDimension=" 到第一个出现的"x"之间的第一个数字 ("655" 字符串); 还需要提取在 "ImageDimension=" 字符串后第一次出现的 "x" 后面的第二个数字 ("0" 字符串)。类似地,提取第三个和第四个数字。
可以使用正则表达式 ("ImageDimension=? x ?;ThumbnailDimension=? x ?")来完成这个任务吗?而不是使用笨重的子字符串和indexOf?谢谢!
我的解决方案并不好:
String configuration = "ImageDimension=655x0;ThumbnailDimension=0x0";
String imageDim = configuration.Substring(0, configuration.IndexOf(";"));
int indexOfEq = imageDim.IndexOf("=");
int indexOfX = imageDim.IndexOf("x");
String width1 = imageDim.Substring(indexOfEq+1, indexOfX-indexOfEq-1);
String height1 = imageDim.Substring(imageDim.IndexOf("x") + 1);
String thumbDim = configuration.Substring(configuration.IndexOf(";") + 1);
indexOfEq = thumbDim.IndexOf("=");
indexOfX = thumbDim.IndexOf("x");
String width2 = imageDim.Substring(indexOfEq + 1, indexOfX - indexOfEq-1);
String height2 = imageDim.Substring(imageDim.IndexOf("x") + 1);