\documentclass[a4paper]{article}
\setlength{\oddsidemargin}{-1cm} \setlength{\topmargin}{-3cm}
\setlength{\textwidth}{18cm} \setlength{\textheight}{26cm}
\pagestyle{empty}

\def\DJ{\leavevmode\setbox0=\hbox{D}\kern0pt
 \rlap{\kern.04em\raise.188\ht0\hbox{-}}D}
\def\dj{\leavevmode\setbox0=\hbox{d}\kern0pt
 \rlap{\kern.215em\raise.46\ht0\hbox{-}}d}

\usepackage{amssymb}
\usepackage{comment}
\begin{document}
\begin{small}
\ \newpage
\begin{center}\textbf{PII - prvi kolokvijum - januar 2007. - prva grupa}\end{center}
\begin{enumerate}
\item Definisati:
\begin{enumerate}
\item nedeterministi\v cki KA sa $\varepsilon$-prelazom, pojam uspe\v snog
izra\v cunavanja u njemu i jezik koji prihavata
\item skresan KA
\end{enumerate}

\item Definisati minimalni automat preko koli\v cnika

\item Dati definiciju regularnog izraza u postfiksnoj notaciji
koriste\' ci operatore \verb"+", \verb"." i \verb"*", a onda
zapisati u postfiksnoj notaciji izraz: \verb"(((a+b)*.(a.b)).((a+b)*))"

\item Da li je proizvod dva deterministi\v cka kona\v cna automata
deterministi\v cki kona\v cni automat? Obrazlo\v ziti.

\item Ko inicijalizuje leksi\v cki analizator?
Opisati sa\v zeto osnovne metode konstrukcije leksi\v ckog
analizatora.

\item Bez pozivanja na kona\v cne automate pokazati da va\v zi: $(a|\ b)^*=(a^*b)^*a^*$
\item
\begin{enumerate}
\item Kori\v s\' cenjem Tompsonovog algoritma konstruisati MDKA za $(a|\,b^+)(a(ab)^*|\,b)^+$
\item Kori\v s\' cenjem algoritma Glu\v skova konstruisati MDKA za $(ca)^+b(a|\,b|\,c)^*$
\end{enumerate}


\item Transformisati slede\' ci automat u automat bez $\varepsilon$-pokreta:
$\Sigma = \{a,b\},\quad     Q = \{1,2,3,4\}\quad     I = \{1\}\quad     F= \{4\}
\quad d = \{(1,a,2), (1,b,1), (2,a,1), (2,b,2), (2,\varepsilon,3), (3,a,3), (3,b,4), (4,a,4), (4,b,3), (4,\varepsilon,1)\}$

\item \begin{enumerate}
\item Konstruisati MDKA
koji prepoznaje sve niske nad $\Sigma=\{0, 1\}$ koje se ne zavr\v savaju sa $111$.
\item Bez kori\v s\' cenja kona\v cnih automata, regularnim izrazom opisati sve niske
nad $\Sigma=\{0, 1\}$ koje se ne sadr\v ze faktor $111$.
\end{enumerate}
\end{enumerate}

\vspace{0.5cm}
\begin{center}\textbf{PII - prvi kolokvijum - januar 2007. - prva grupa}\end{center}
\begin{enumerate}
\item Definisati:
\begin{enumerate}
\item nedeterministi\v cki KA sa $\varepsilon$-prelazom, pojam uspe\v snog
izra\v cunavanja u njemu i jezik koji prihavata
\item skresan KA
\end{enumerate}

\item Definisati minimalni automat preko koli\v cnika

\item Dati definiciju regularnog izraza u postfiksnoj notaciji
koriste\' ci operatore \verb"+", \verb"." i \verb"*", a onda
zapisati u postfiksnoj notaciji izraz: \verb"(((a+b)*.(a.b)).((a+b)*))"

\item Da li je proizvod dva deterministi\v cka kona\v cna automata
deterministi\v cki kona\v cni automat? Obrazlo\v ziti.

\item Ko inicijalizuje leksi\v cki analizator?
Opisati sa\v zeto osnovne metode konstrukcije leksi\v ckog
analizatora.

\item Bez pozivanja na kona\v cne automate pokazati da va\v zi: $(a|\ b)^*=(a^*b)^*a^*$
\item
\begin{enumerate}
\item Kori\v s\' cenjem Tompsonovog algoritma konstruisati MDKA za $(a|\,b^+)(a(ab)^*|\,b)^+$
\item Kori\v s\' cenjem algoritma Glu\v skova konstruisati MDKA za $(ca)^+b(a|\,b|\,c)^*$
\end{enumerate}


\item Transformisati slede\' ci automat u automat bez $\varepsilon$-pokreta:
$\Sigma = \{a,b\},\quad     Q = \{1,2,3,4\}\quad     I = \{1\}\quad     F= \{4\}
\quad d = \{(1,a,2), (1,b,1), (2,a,1), (2,b,2), (2,\varepsilon,3), (3,a,3), (3,b,4), (4,a,4), (4,b,3), (4,\varepsilon,1)\}$

\item \begin{enumerate}
\item Konstruisati MDKA
koji prepoznaje sve niske nad $\Sigma=\{0, 1\}$ koje se ne zavr\v savaju sa $111$.
\item Bez kori\v s\' cenja kona\v cnih automata, regularnim izrazom opisati sve niske
nad $\Sigma=\{0, 1\}$ koje se ne sadr\v ze faktor $111$.
\end{enumerate}
\end{enumerate}

\vspace{0.5cm}
\begin{center}\textbf{PII - prvi kolokvijum - januar 2007. - prva grupa}\end{center}
\begin{enumerate}
\item Definisati:
\begin{enumerate}
\item nedeterministi\v cki KA sa $\varepsilon$-prelazom, pojam uspe\v snog
izra\v cunavanja u njemu i jezik koji prihavata
\item skresan KA
\end{enumerate}

\item Definisati minimalni automat preko koli\v cnika

\item Dati definiciju regularnog izraza u postfiksnoj notaciji
koriste\' ci operatore \verb"+", \verb"." i \verb"*", a onda
zapisati u postfiksnoj notaciji izraz: \verb"(((a+b)*.(a.b)).((a+b)*))"

\item Da li je proizvod dva deterministi\v cka kona\v cna automata
deterministi\v cki kona\v cni automat? Obrazlo\v ziti.

\item Ko inicijalizuje leksi\v cki analizator?
Opisati sa\v zeto osnovne metode konstrukcije leksi\v ckog
analizatora.

\item Bez pozivanja na kona\v cne automate pokazati da va\v zi: $(a|\ b)^*=(a^*b)^*a^*$
\item
\begin{enumerate}
\item Kori\v s\' cenjem Tompsonovog algoritma konstruisati MDKA za $(a|\,b^+)(a(ab)^*|\,b)^+$
\item Kori\v s\' cenjem algoritma Glu\v skova konstruisati MDKA za $(ca)^+b(a|\,b|\,c)^*$
\end{enumerate}


\item Transformisati slede\' ci automat u automat bez $\varepsilon$-pokreta:
$\Sigma = \{a,b\},\quad     Q = \{1,2,3,4\}\quad     I = \{1\}\quad     F= \{4\}
\quad d = \{(1,a,2), (1,b,1), (2,a,1), (2,b,2), (2,\varepsilon,3), (3,a,3), (3,b,4), (4,a,4), (4,b,3), (4,\varepsilon,1)\}$

\item \begin{enumerate}
\item Konstruisati MDKA
koji prepoznaje sve niske nad $\Sigma=\{0, 1\}$ koje se ne zavr\v savaju sa $111$.
\item Bez kori\v s\' cenja kona\v cnih automata, regularnim izrazom opisati sve niske
nad $\Sigma=\{0, 1\}$ koje se ne sadr\v ze faktor $111$.
\end{enumerate}
\end{enumerate}


\newpage
\begin{enumerate}
\item[10.] \v Sta ispisuje slede\' ci {\sc perl} program
  \begin{verbatim}
    while($STRING =~ m/($REGEX)/g) {
        print $1."  ";
    }
  \end{verbatim}
\vspace{-0.5cm}
  ako je

  \begin{tabular}{ll}
    \verb"$REGEX='(?m)^(?=.*?a)(?=.*?b)((?!c|d).)*$';" &  \verb"$STRING="\verb|"|\verb"dabar\nbabino\ncaca\ndaca\n"\verb|"|\verb";"     \\
    \verb"$REGEX='x|y+';" &  \verb"$STRING="\verb|"|\verb"xyx yyx yyyxxyy"\verb|"|\verb";"       \\
    \verb"$REGEX='[^aeiou][aeiou][^aeiou]';" &  \verb"$STRING='Prevodioci i interpretatori';"       \\
    \verb"$REGEX='\B[\da-fA-F]+\B';" &  \verb"$STRING="\verb|"|\verb"Heksadekadni broj 3EAF."\verb|"|\verb";" \\
    \verb"$REGEX='min|max|minimax';" &  \verb"$STRING='minimax';"       \\
    \verb"$REGEX='<.+>';" &  \verb"$STRING='<head><title>Naslov</title></head>';"       \\
    \verb"$REGEX='i.*i';" &  \verb"$STRING='Prevodioci i interpretatori';"      \\
    \verb"$REGEX='(?-i)ab(?i)cd';" &  \verb"$STRING='abCdAbcDabcdABCDabcd';"        \\
    \verb"$REGEX='(t|r)+';" &  \verb"$STRING="\verb|"|\verb"trt rrt rrrttrr"\verb|"|\verb";"     \\
    \verb"$REGEX='\w*?\.\w*?';" &  \verb"$STRING='image.jpg';"        \\
    \verb"$REGEX='o.*?o';" &  \verb"$STRING='Prevodioci i interpretatori';"     \\
    \verb"$REGEX='(?m)^.*(a|b).*$';" &  \verb"$STRING='qwerty\nasdf\nvbnm\nzabar';"     \\
    \verb"$REGEX='a+|b+';" &  \verb"$STRING="\verb|"|\verb"aba bba bbbaab"\verb|"|\verb";"      \\
    \verb"$REGEX='(\d+)(,\s*\2)+';" &  \verb"$STRING='15, 15, 16, 17, 18, 18, 18, 20, 23';"     \\
    \verb"$REGEX='(?<![rst])[aeiou][^aeiou]';" &  \verb"$STRING='Prevodioci i interpretatori';"     \\
  \end{tabular}

\end{enumerate}

\vspace{0.5cm}
\begin{enumerate}
\item[10.] \v Sta ispisuje slede\' ci {\sc perl} program
  \begin{verbatim}
    while($STRING =~ m/($REGEX)/g) {
        print $1."  ";
    }
  \end{verbatim}
\vspace{-0.5cm}
  ako je

  \begin{tabular}{ll}
    \verb"$REGEX='(?m)^(?=.*?a)(?=.*?b)((?!c|d).)*$';" &  \verb"$STRING="\verb|"|\verb"dabar\nbabino\ncaca\ndaca\n"\verb|"|\verb";"     \\
    \verb"$REGEX='x|y+';" &  \verb"$STRING="\verb|"|\verb"xyx yyx yyyxxyy"\verb|"|\verb";"       \\
    \verb"$REGEX='[^aeiou][aeiou][^aeiou]';" &  \verb"$STRING='Prevodioci i interpretatori';"       \\
    \verb"$REGEX='\B[\da-fA-F]+\B';" &  \verb"$STRING="\verb|"|\verb"Heksadekadni broj 3EAF."\verb|"|\verb";" \\
    \verb"$REGEX='min|max|minimax';" &  \verb"$STRING='minimax';"       \\
    \verb"$REGEX='<.+>';" &  \verb"$STRING='<head><title>Naslov</title></head>';"       \\
    \verb"$REGEX='i.*i';" &  \verb"$STRING='Prevodioci i interpretatori';"      \\
    \verb"$REGEX='(?-i)ab(?i)cd';" &  \verb"$STRING='abCdAbcDabcdABCDabcd';"        \\
    \verb"$REGEX='(t|r)+';" &  \verb"$STRING="\verb|"|\verb"trt rrt rrrttrr"\verb|"|\verb";"     \\
    \verb"$REGEX='\w*?\.\w*?';" &  \verb"$STRING='image.jpg';"        \\
    \verb"$REGEX='o.*?o';" &  \verb"$STRING='Prevodioci i interpretatori';"     \\
    \verb"$REGEX='(?m)^.*(a|b).*$';" &  \verb"$STRING='qwerty\nasdf\nvbnm\nzabar';"     \\
    \verb"$REGEX='a+|b+';" &  \verb"$STRING="\verb|"|\verb"aba bba bbbaab"\verb|"|\verb";"      \\
    \verb"$REGEX='(\d+)(,\s*\2)+';" &  \verb"$STRING='15, 15, 16, 17, 18, 18, 18, 20, 23';"     \\
    \verb"$REGEX='(?<![rst])[aeiou][^aeiou]';" &  \verb"$STRING='Prevodioci i interpretatori';"     \\
  \end{tabular}

\end{enumerate}

\vspace{0.5cm}
\begin{enumerate}
\item[10.] \v Sta ispisuje slede\' ci {\sc perl} program
  \begin{verbatim}
    while($STRING =~ m/($REGEX)/g) {
        print $1."  ";
    }
  \end{verbatim}
\vspace{-0.5cm}
  ako je

  \begin{tabular}{ll}
    \verb"$REGEX='(?m)^(?=.*?a)(?=.*?b)((?!c|d).)*$';" &  \verb"$STRING="\verb|"|\verb"dabar\nbabino\ncaca\ndaca\n"\verb|"|\verb";"     \\
    \verb"$REGEX='x|y+';" &  \verb"$STRING="\verb|"|\verb"xyx yyx yyyxxyy"\verb|"|\verb";"       \\
    \verb"$REGEX='[^aeiou][aeiou][^aeiou]';" &  \verb"$STRING='Prevodioci i interpretatori';"       \\
    \verb"$REGEX='\B[\da-fA-F]+\B';" &  \verb"$STRING="\verb|"|\verb"Heksadekadni broj 3EAF."\verb|"|\verb";" \\
    \verb"$REGEX='min|max|minimax';" &  \verb"$STRING='minimax';"       \\
    \verb"$REGEX='<.+>';" &  \verb"$STRING='<head><title>Naslov</title></head>';"       \\
    \verb"$REGEX='i.*i';" &  \verb"$STRING='Prevodioci i interpretatori';"      \\
    \verb"$REGEX='(?-i)ab(?i)cd';" &  \verb"$STRING='abCdAbcDabcdABCDabcd';"        \\
    \verb"$REGEX='(t|r)+';" &  \verb"$STRING="\verb|"|\verb"trt rrt rrrttrr"\verb|"|\verb";"     \\
    \verb"$REGEX='\w*?\.\w*?';" &  \verb"$STRING='image.jpg';"        \\
    \verb"$REGEX='o.*?o';" &  \verb"$STRING='Prevodioci i interpretatori';"     \\
    \verb"$REGEX='(?m)^.*(a|b).*$';" &  \verb"$STRING='qwerty\nasdf\nvbnm\nzabar';"     \\
    \verb"$REGEX='a+|b+';" &  \verb"$STRING="\verb|"|\verb"aba bba bbbaab"\verb|"|\verb";"      \\
    \verb"$REGEX='(\d+)(,\s*\2)+';" &  \verb"$STRING='15, 15, 16, 17, 18, 18, 18, 20, 23';"     \\
    \verb"$REGEX='(?<![rst])[aeiou][^aeiou]';" &  \verb"$STRING='Prevodioci i interpretatori';"     \\
  \end{tabular}

\end{enumerate}








%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


\newpage
\begin{center}\textbf{PII - prvi kolokvijum - januar 2007. - druga grupa}\end{center}
\begin{enumerate}
\item Definisati:
\begin{enumerate}
\item deterministi\v cki KA, pojam uspe\v snog izra\v cunavanja u
njemu i jezik koji prihvata
\item standardan KA
\end{enumerate}
\item Definisati minimalni automat preko Nerodove ekvivalencije
\item Dati definiciju regularnog izraza u prefiksnoj notaciji
koriste\' ci operatore \verb"+", \verb"." i \verb"*",
a onda zapisati u prefiksnoj notaciji izraz: \verb"((a+(b.((((a.(b*)).a)*.b)))*)"

\item Da li je unija dva deterministi\v cka kona\v cna automata
deterministi\v cki kona\v cni automat? Obrazlo\v ziti.

\item Definisati token i leksemu. Koje se gre\v ske otkrivaju u
leksi\v ckoj analizi? Kako se vr\v si oporavak od gre\v ske?
Kako komuniciraju leksi\v cki i sintaksi\v cki analizator?

\item Koriste\' ci identitet $(a|\,b)^*=(a^*b)^*a^*$, pokazati da va\v zi
$(b^*a)^*=(a^*b)^*a^+|\,\varepsilon$

\item
\begin{enumerate}
\item Kori\v s\' cenjem algoritma Glu\v skova konstruisati MDKA za $(a|\,b^+)(a(ab)^*|\,b)^+$
\item Kori\v s\' cenjem Tompsonovog algoritma konstruisati MDKA za $(ca)^+b(a|\,b|\,c)^*$
\end{enumerate}
\item Transformisati slede\' ci automat u automat bez $\varepsilon$-pokreta:
$\Sigma = \{a,b,c\},\quad     Q = \{1,2,3,4\}\quad     I = \{1\}\quad     F= \{2\}
\quad d = \{(1,a,1), (1,c,4), (1,\varepsilon,2), (2,a,3), (2,b,2), (2,\varepsilon,1), (3,\varepsilon,2), (4,b,3)\}$

\item \begin{enumerate}
\item Konstruisati MDKA
koji prepoznaje sve niske nad $\Sigma=\{0, 1\}$ koje ne sadr\v ze faktor $111$.
\item Bez kori\v s\' cenja automata, regularnim izrazom opisati sve niske
nad $\Sigma=\{0, 1\}$ koje se ne zavr\v savaju sa $111$.
\end{enumerate}
\end{enumerate}

\vspace{0.5cm}
\begin{center}\textbf{PII - prvi kolokvijum - januar 2007. - druga grupa}\end{center}
\begin{enumerate}
\item Definisati:
\begin{enumerate}
\item deterministi\v cki KA, pojam uspe\v snog izra\v cunavanja u
njemu i jezik koji prihvata
\item standardan KA
\end{enumerate}
\item Definisati minimalni automat preko Nerodove ekvivalencije
\item Dati definiciju regularnog izraza u prefiksnoj notaciji
koriste\' ci operatore \verb"+", \verb"." i \verb"*",
a onda zapisati u prefiksnoj notaciji izraz: \verb"((a+(b.((((a.(b*)).a)*.b)))*)"

\item Da li je unija dva deterministi\v cka kona\v cna automata
deterministi\v cki kona\v cni automat? Obrazlo\v ziti.

\item Definisati token i leksemu. Koje se gre\v ske otkrivaju u
leksi\v ckoj analizi? Kako se vr\v si oporavak od gre\v ske?
Kako komuniciraju leksi\v cki i sintaksi\v cki analizator?

\item Koriste\' ci identitet $(a|\,b)^*=(a^*b)^*a^*$, pokazati da va\v zi
$(b^*a)^*=(a^*b)^*a^+|\,\varepsilon$

\item
\begin{enumerate}
\item Kori\v s\' cenjem algoritma Glu\v skova konstruisati MDKA za $(a|\,b^+)(a(ab)^*|\,b)^+$
\item Kori\v s\' cenjem Tompsonovog algoritma konstruisati MDKA za $(ca)^+b(a|\,b|\,c)^*$
\end{enumerate}
\item Transformisati slede\' ci automat u automat bez $\varepsilon$-pokreta:
$\Sigma = \{a,b,c\},\quad     Q = \{1,2,3,4\}\quad     I = \{1\}\quad     F= \{2\}
\quad d = \{(1,a,1), (1,c,4), (1,\varepsilon,2), (2,a,3), (2,b,2), (2,\varepsilon,1), (3,\varepsilon,2), (4,b,3)\}$

\item \begin{enumerate}
\item Konstruisati MDKA
koji prepoznaje sve niske nad $\Sigma=\{0, 1\}$ koje ne sadr\v ze faktor $111$.
\item Bez kori\v s\' cenja automata, regularnim izrazom opisati sve niske
nad $\Sigma=\{0, 1\}$ koje se ne zavr\v savaju sa $111$.
\end{enumerate}
\end{enumerate}
\vspace{0.5cm}
\begin{center}\textbf{PII - prvi kolokvijum - januar 2007. - druga grupa}\end{center}
\begin{enumerate}
\item Definisati:
\begin{enumerate}
\item deterministi\v cki KA, pojam uspe\v snog izra\v cunavanja u
njemu i jezik koji prihvata
\item standardan KA
\end{enumerate}
\item Definisati minimalni automat preko Nerodove ekvivalencije
\item Dati definiciju regularnog izraza u prefiksnoj notaciji
koriste\' ci operatore \verb"+", \verb"." i \verb"*",
a onda zapisati u prefiksnoj notaciji izraz: \verb"((a+(b.((((a.(b*)).a)*.b)))*)"

\item Da li je unija dva deterministi\v cka kona\v cna automata
deterministi\v cki kona\v cni automat? Obrazlo\v ziti.

\item Definisati token i leksemu. Koje se gre\v ske otkrivaju u
leksi\v ckoj analizi? Kako se vr\v si oporavak od gre\v ske?
Kako komuniciraju leksi\v cki i sintaksi\v cki analizator?

\item Koriste\' ci identitet $(a|\,b)^*=(a^*b)^*a^*$, pokazati da va\v zi
$(b^*a)^*=(a^*b)^*a^+|\,\varepsilon$

\item
\begin{enumerate}
\item Kori\v s\' cenjem algoritma Glu\v skova konstruisati MDKA za $(a|\,b^+)(a(ab)^*|\,b)^+$
\item Kori\v s\' cenjem Tompsonovog algoritma konstruisati MDKA za $(ca)^+b(a|\,b|\,c)^*$
\end{enumerate}
\item Transformisati slede\' ci automat u automat bez $\varepsilon$-pokreta:
$\Sigma = \{a,b,c\},\quad     Q = \{1,2,3,4\}\quad     I = \{1\}\quad     F= \{2\}
\quad d = \{(1,a,1), (1,c,4), (1,\varepsilon,2), (2,a,3), (2,b,2), (2,\varepsilon,1), (3,\varepsilon,2), (4,b,3)\}$

\item \begin{enumerate}
\item Konstruisati MDKA
koji prepoznaje sve niske nad $\Sigma=\{0, 1\}$ koje ne sadr\v ze faktor $111$.
\item Bez kori\v s\' cenja automata, regularnim izrazom opisati sve niske
nad $\Sigma=\{0, 1\}$ koje se ne zavr\v savaju sa $111$.
\end{enumerate}
\end{enumerate}


\newpage

\begin{enumerate}
\item[10.] \v Sta ispisuje slede\' ci {\sc perl} program
  \begin{verbatim}
    while($STRING =~ m/($REGEX)/g) {
        print $1."  ";
    }
  \end{verbatim}
\vspace{-0.5cm}  ako je

  \begin{tabular}{ll}
    \verb"$REGEX='a|b+';" &  \verb"$STRING="\verb|"|\verb"aba bba bbbaab"\verb|"|\verb";"       \\
    \verb"$REGEX='i.*?i';" &  \verb"$STRING='Prevodioci i interpretatori';"     \\
    \verb"$REGEX='\B[\da-fA-F]+\B';" &  \verb"$STRING="\verb|"|\verb"Heksadekadni broj 3EAF."\verb|"|\verb";" \\
    \verb"$REGEX='min|max|minimax';" &  \verb"$STRING='minimax';"       \\
    \verb"$REGEX='<.+>';" &  \verb"$STRING='<head><title>Naslov</title></head>';"       \\
    \verb"$REGEX='\w*?\.\w*?';" &  \verb"$STRING='dat.txt';"        \\
    \verb"$REGEX='(?<![rst])[aeiou][^aeiou]';" &  \verb"$STRING='Prevodioci i interpretatori';"     \\
    \verb"$REGEX='i.*i';" &  \verb"$STRING='Prevodioci i interpretatori';"      \\
    \verb"$REGEX='(?-i)ab(?i)cd';" &  \verb"$STRING='abCdAbcDabcdABCDabcd';"        \\
    \verb"$REGEX='(a|b)+';" &  \verb"$STRING="\verb|"|\verb"aba bba bbbaab"\verb|"|\verb";"     \\
    \verb"$REGEX='(?m)^.*(a|b).*$';" &  \verb"$STRING='qwerty\nasdf\nvbnm\nzabar';"     \\
    \verb"$REGEX='a+|b+';" &  \verb"$STRING="\verb|"|\verb"aba bba bbbaab"\verb|"|\verb";"      \\
    \verb"$REGEX='(?m)^(?=.*?a)(?=.*?b)((?!c|d).)*$';" &  \verb"$STRING="\verb|"|\verb"dabar\nbabino\ncaca\ndaca\n"\verb|"|\verb";"     \\
    \verb"$REGEX='(\d+)(,\s*\2)+';" &  \verb"$STRING='15, 15, 16, 17, 18, 18, 18, 20, 23';"     \\
    \verb"$REGEX='[^aeiou][aeiou][^aeiou]';" &  \verb"$STRING='Prevodioci i interpretatori';"       \\
  \end{tabular}

\end{enumerate}
\vspace{0.6cm}
\begin{enumerate}
\item[10.] \v Sta ispisuje slede\' ci {\sc perl} program
  \begin{verbatim}
    while($STRING =~ m/($REGEX)/g) {
        print $1."  ";
    }
  \end{verbatim}
\vspace{-0.5cm}  ako je

  \begin{tabular}{ll}
    \verb"$REGEX='a|b+';" &  \verb"$STRING="\verb|"|\verb"aba bba bbbaab"\verb|"|\verb";"       \\
    \verb"$REGEX='i.*?i';" &  \verb"$STRING='Prevodioci i interpretatori';"     \\
    \verb"$REGEX='\B[\da-fA-F]+\B';" &  \verb"$STRING="\verb|"|\verb"Heksadekadni broj 3EAF."\verb|"|\verb";" \\
    \verb"$REGEX='min|max|minimax';" &  \verb"$STRING='minimax';"       \\
    \verb"$REGEX='<.+>';" &  \verb"$STRING='<head><title>Naslov</title></head>';"       \\
    \verb"$REGEX='\w*?\.\w*?';" &  \verb"$STRING='dat.txt';"        \\
    \verb"$REGEX='(?<![rst])[aeiou][^aeiou]';" &  \verb"$STRING='Prevodioci i interpretatori';"     \\
    \verb"$REGEX='i.*i';" &  \verb"$STRING='Prevodioci i interpretatori';"      \\
    \verb"$REGEX='(?-i)ab(?i)cd';" &  \verb"$STRING='abCdAbcDabcdABCDabcd';"        \\
    \verb"$REGEX='(a|b)+';" &  \verb"$STRING="\verb|"|\verb"aba bba bbbaab"\verb|"|\verb";"     \\
    \verb"$REGEX='(?m)^.*(a|b).*$';" &  \verb"$STRING='qwerty\nasdf\nvbnm\nzabar';"     \\
    \verb"$REGEX='a+|b+';" &  \verb"$STRING="\verb|"|\verb"aba bba bbbaab"\verb|"|\verb";"      \\
    \verb"$REGEX='(?m)^(?=.*?a)(?=.*?b)((?!c|d).)*$';" &  \verb"$STRING="\verb|"|\verb"dabar\nbabino\ncaca\ndaca\n"\verb|"|\verb";"     \\
    \verb"$REGEX='(\d+)(,\s*\2)+';" &  \verb"$STRING='15, 15, 16, 17, 18, 18, 18, 20, 23';"     \\
    \verb"$REGEX='[^aeiou][aeiou][^aeiou]';" &  \verb"$STRING='Prevodioci i interpretatori';"       \\
  \end{tabular}

\end{enumerate}
\vspace{0.6cm}
\begin{enumerate}
\item[10.] \v Sta ispisuje slede\' ci {\sc perl} program
  \begin{verbatim}
    while($STRING =~ m/($REGEX)/g) {
        print $1."  ";
    }
  \end{verbatim}
\vspace{-0.5cm}  ako je

  \begin{tabular}{ll}
    \verb"$REGEX='a|b+';" &  \verb"$STRING="\verb|"|\verb"aba bba bbbaab"\verb|"|\verb";"       \\
    \verb"$REGEX='i.*?i';" &  \verb"$STRING='Prevodioci i interpretatori';"     \\
    \verb"$REGEX='\B[\da-fA-F]+\B';" &  \verb"$STRING="\verb|"|\verb"Heksadekadni broj 3EAF."\verb|"|\verb";" \\
    \verb"$REGEX='min|max|minimax';" &  \verb"$STRING='minimax';"       \\
    \verb"$REGEX='<.+>';" &  \verb"$STRING='<head><title>Naslov</title></head>';"       \\
    \verb"$REGEX='\w*?\.\w*?';" &  \verb"$STRING='dat.txt';"        \\
    \verb"$REGEX='(?<![rst])[aeiou][^aeiou]';" &  \verb"$STRING='Prevodioci i interpretatori';"     \\
    \verb"$REGEX='i.*i';" &  \verb"$STRING='Prevodioci i interpretatori';"      \\
    \verb"$REGEX='(?-i)ab(?i)cd';" &  \verb"$STRING='abCdAbcDabcdABCDabcd';"        \\
    \verb"$REGEX='(a|b)+';" &  \verb"$STRING="\verb|"|\verb"aba bba bbbaab"\verb|"|\verb";"     \\
    \verb"$REGEX='(?m)^.*(a|b).*$';" &  \verb"$STRING='qwerty\nasdf\nvbnm\nzabar';"     \\
    \verb"$REGEX='a+|b+';" &  \verb"$STRING="\verb|"|\verb"aba bba bbbaab"\verb|"|\verb";"      \\
    \verb"$REGEX='(?m)^(?=.*?a)(?=.*?b)((?!c|d).)*$';" &  \verb"$STRING="\verb|"|\verb"dabar\nbabino\ncaca\ndaca\n"\verb|"|\verb";"     \\
    \verb"$REGEX='(\d+)(,\s*\2)+';" &  \verb"$STRING='15, 15, 16, 17, 18, 18, 18, 20, 23';"     \\
    \verb"$REGEX='[^aeiou][aeiou][^aeiou]';" &  \verb"$STRING='Prevodioci i interpretatori';"       \\
  \end{tabular}

\end{enumerate}


\end{small}
\end{document}
