Sveiki,
persidariau vieną scriptuką kad išiminėtų man vardadieniu tačiau problema tame kad išiminėja eilutės:
Kodas:
while {[regexp -nocase {<a class="grey" href="/vardadieniai/(.*?)">(.*?)</a>} $html - oname]} {
(.*?) pirmąją reikšmę kuri yra be lietuvybių. Gal galit pagelbėti kaip man pasidaryti kad išiminėtų antrąją reikšmę
(.*?)Pilnas kodas:
Kodas:
variable online_url "http://www.tostai.lt/vardadieniai"
variable online_chans "#Kanalas"
package require http
bind pub - !vardadieniai pub:online
proc pub:online {nick host hand chan text} {
if {[lsearch -exact [split $::online_chans] $chan] == -1} {return}
set token [http::config -useragent "Lynx/2.8.5rel.1 libwww-FM/2.14 SSL-MM/1.4.1 OpenSSL/0.9.7e"]
catch {set token [http::geturl $::online_url -timeout 5000]} error
if {[string match -nocase "*couldn't open socket*" $error]} {
puthelp "PRIVMSG $chan :Sorry, cannot create a socket to \"$::online_url\"."
return 0
} elseif {[::http::status $token] == "timeout"} {
puthelp "PRIVMSG $chan :Sorry, your request to \"$::online_url\" has timed out."
return 0
}
set html [http::data $token]
http::cleanup $token
regsub -all {(?:\t|\n|\r|\v)} $html "" html
set onames {}
while {[regexp -nocase {<a class="grey" href="/vardadieniai/(.*?)">(.*?)</a>} $html - oname]} {
lappend onames $oname
regsub -nocase {<a class="grey" href="/vardadieniai/} $html "" html
}
putserv "privmsg $chan :Šiandien vardadienius švenčia: [join $onames ", "]"
return 1
}