Falamos falamos, mas para fechar o estudo dos metacaracteres, faltou conhecer os relacionamentos entre eles, quem é mais forte, mais fraco, quem arrasta os outros...
É bem simples, sabe na matemática, onde temos as ordens de precedência entre a adição e a multiplicação, onde esta é mais "forte" que aquela?
Por exemplo "2+4*6", é "quatro vezes seis, e depois soma com o dois". Mesmo vindo depois, a multiplicação tem preferência. Com as ERs acontece o mesmo, seguindo estas regras:
tipo de meta exemplo precedência quantificador ab+ maior concatenação ab média ou ab|c menor
Ou seja, na situação ab*
não é "a com b, em qualquer quantidade", e sim "a, seguido de b em qualquer quantidade", ou seja, a concatenação a seguido de b não é mais forte que a quantificação, que rouba o b
para ela.
Na última ab|c
em vez de "a, seguido de b ou c" é na verdade "ab ou c", pois o ou é o mais fraquinho de todos, não puxa nada para o cesto dele.
Por isso que boa-tarde|boa-noite
funciona, pois os caracteres se juntam e se grudam uns com os outros, e o ou não tem força para quebrar isso.
E como na matemática também, os parênteses servem para juntar na marra e dar força aos fracos. Por isso se diz que o grupo aumenta o poder do ou.
Só com a dobradinha grupo+ou é possível algo como boa-tard(e|b)oa-noite
, o que não faz sentido, mas mostra que juntos eles conseguem quebrar a união da concatenação.
Com isso em mente, como fica a relação de forças em ab|cd*
? Vamos colocar os "amigos" entre chaves para ilustrar essa quebra de braço:
ab|c{d*}
O d é do *
pela quantificação ser mais forte que a concatenação, então o c coitado não tem força para puxar o seu amigo d para o seu lado.
ab|{c{d*}}
Agora o c fica na dúvida, mas se juntar com o | não dá, pois ele é o mais fraquinho de todos, então ele se junta com o d quantificado. Como o | já perdeu a briga à direita, ele olha para o outro lado e...
{ab}|{c{d*}}
O b rapidinho se junta com o a (concatenação) para fugir do fracote. É como no primário onde sempre tem aquele cara desengonçado que fica por último na escolha dos jogadores para o futebol com bola de meia, o | fica com o que sobrou, de um lado ab e do outro cd*.
Esse mundo é mesmo muito cruel com os mais fracos, até os metacaracteres sofrem com essa discriminação &:)