Verifica dell'intera stringa con espressioni regolari in PHP

Spesso preg_match viene utilizzato per verificare la corrispondenza a un'espressione regolare dell'intera stringa. In questo caso, all'inizio dell'espressione regolare si dovrebbe mettere il simbolo di accento circonflesso ^, e alla fine - il simbolo del dollaro $. In questo modo diciamo che l'intera stringa deve corrispondere al modello.

Ad esempio, scopriamo se una stringa è composta interamente da lettere 'a', oppure no:

php<?php
  echo preg_match('#^a+$#', 'aaaa'); // restituisce 1
  echo preg_match('#^a+$#', 'aaab'); // restituisce 0
?>
Задание 1

Determina se la stringa passata è un dominio. Utilizza per i test le seguenti stringhe:

php<?php
  $arr[] = 'site.ru';          // +
  $arr[] = 'site.com';         // +
  $arr[] = 'my-site.com';      // +
  $arr[] = 'my-cool-site.com'; // +
  $arr[] = 'my_site.com';      // +
  $arr[] = 'site123.com';      // +
  $arr[] = 'site.travel';      // +
  $arr[] = 'si$te.com';        // -
  $arr[] = 'site.r';           // -
?>
Задание 2

Determina se la stringa passata è un'email. Utilizza per i test le seguenti stringhe:

php<?php
  $arr[] = 'addr@mail.ru';    // +
  $arr[] = 'addr123@mail.ru'; // +
  $arr[] = 'my-addr@mail.ru'; // +
  $arr[] = 'my_addr@mail.ru'; // +
  $arr[] = 'addr@site.ru';    // +
  $arr[] = 'addr.ru';         // -
  $arr[] = 'addr@.ru';        // -
  $arr[] = 'my@addr@mail.ru'; // -
?>