![]() |
![]() |
Nickk 26.04.2004 - 12:12 |
Народ, вылетело из головы.. :( Как такое сделать? - Есть пага index.html, в ней, "где то" строчка - <b>123.123</b> Нужно заменить цифры между <b> на другие. (загнать весь HTML код в скрипт и вместо цифр подставить переменные нет возможности - пага обновляется не только этим скриптом) Заранее благодарен |
Adept 1 - 26.04.2004 - 12:19 |
$filecontent=~s#<b>(\d){3}\.(\d){3}</b>#<b>${first}.${second}</b>#g; ? |
Nickk 2 - 26.04.2004 - 12:22 |
Сенькс! Только забыл сказать - число то не обязательно будет такое.. ...(\d){3}\.(\d)... - вместо 3 наверное ? надо поставить? |
Nickk 3 - 26.04.2004 - 12:24 | а если - tr/a-zA-Z/$var/ - так уберем все не буквы, но проблема как заменить значение между "метками" в HTML коде, а не добавить... |
Adept 4 - 26.04.2004 - 12:33 | Нет, это вместо 3х цифр |
Kokoc 5 - 26.04.2004 - 19:42 |
Можно еще так: =~ s#(<b>)([\d|\.|\s]+)(</b>)#${1}$replacement${3}#g; Последовательность цифр и точек между <b> и </b> заменяются на $replacement; заодно удаляются возможные пробелы. |
mae 6 - 27.04.2004 - 06:19 |
В лоб: ~s!<b>.*?</b>!<b>$yourdigits</b>!gsi; |
mae 7 - 27.04.2004 - 06:21 |
Если встречаются иные <b> теги, и надо заменить только там, где цифры, то: ~s!<b>\d+?(?:\.\d+?)</b>!<b>$yourdigits</b>!gsi; |
mae 8 - 27.04.2004 - 06:23 | точнее ~s!<b>\d+?(?:\.\d+?)?</b>!<b>$yourdigits</b>!gsi; |