Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Poniżej wersja z niemal prawidłową obsługą kolorów mircowych.
- # Oczywiście, nikt normalny tak nie pisze regexpów, ale zrobiłem tak ze względów edukacyjnych, no i dlatego, że nie pasuję pod kwantyfikator
- # Po ludzku ten regexp wygląda tak: $msg =~ s{^<\x03([02-9]|1[0-5])(.+?)\x0f>\s}{}
- sub event_message {
- my ( $server, $msg, $nick, @rest ) = @_;
- if (
- $msg =~ s{ # Tak robimy regexy w perlu:
- ^ # zaczynamy na początku lini
- < # pierwszym znakiem musi być '<'
- \x03 # mircowy kolor zaczyna się znakiem chr(3)
- ([02-9]|1[0-5]) # numery koloru to 0,1,2,…,15, ale nie działa dla ^C1 – czarny, bo różnie to może być
- (.+?) # tu jest właściwy nick
- \x0f # chr(15) to znak przywrócenia atrybutów do pierwotnych
- > # zamyka nick
- \s # no i jeszcze spacja
- }
- {}x # Powyższe zamieniamy na '', czyli wycinamy w cholerę
- )
- {
- $nick = 'D|' . $2;
- Irssi::signal_continue( $server, $msg, $nick, @rest );
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement