Доброго времени суток, Дамы и Господа.
Понимаю, что времени у всех в обрез. Но если найдется свободная минутка, помогите протестировать скрипт или может опытным взглядом найти недочеты, косяки...
Задача: Есть строка вида -
Код:
|
http://domen_name/path/file_name[0*]1.{gif || jpg}:{N}
Примеры:
http://domen_name/path/file_name001.gif:107
http://domen_name/path/file_name1.jpg:123
http://domen_name/path/file_name0000001.gif:2008 |
Где:
[0*] - Это нули. Могут быть или не быть.
{gif || jpg} -Это расширение файла. Или gif или jpg
{N} - Это натуральное число.
Эту строку нужно проверить на соответствие формату и "вытащить" из нее domen_name, строку от начала до нулей, расширение, число в конце строки, количество нулей.
Решение:
Написал соответствующий скрипт, но терзают сомнения: вдруг что не так? Ниже приведен готовый документ, в нем можно тестировать.
<html><head>
<script language=javascript>
var searSt=new RegExp("^(http:\/\/([^\/]+).+)1[\.](.{3})\:0*([0-9]+)$");
function ttt(){
var out="<font color=red>invalid STRING</font>";
var RegArr=document.getElementById('searchSTR').value.match(searSt);
if (RegArr&&(RegArr[3]=="jpg"||RegArr[3]=="gif")){
RegArr[5]=RegArr[1].match("(0*)$")[1];
RegArr[1]=RegArr[1].substr(0, RegArr[1].length-RegArr[5].length);
var out="Строка до нулей: <font color=blue>"+RegArr[1]+"</font><br>"+
"Домен: <font color=blue>"+RegArr[2]+"</font><br>"+
"Расширение: <font color=blue>"+RegArr[3]+"</font><br>"+
"Количество изображений: <font color=blue>"+parseInt(RegArr[4])+"</font><br>"+
"Количество нулей: <font color=blue>"+RegArr[5].length+"</font>";}
document.getElementById('par').innerHTML=out;
}
</script>
</head>
<body>
<input type="text" id="searchSTR" style="width:300" value="http://domen_name/path/file_name001.gif:123">
<input type="button" onclick="ttt()" value="проверить">
<p id="par"></p>
</body></html>