bom dia a todos,
Eu e um amigo estamos desenvolvendo um script que pega referencias bibicas de arquivos texto. O script funciona parcialmente, pois esta acontecendo algo muito estranho. Vejam:
RegExp. Pattern:
[ ;{(]?([A-Z0-9]{0,3} *)?[1-3]? ?([A-Z](\.|[a-zà-ÿ]+\.?)) +(( *; *)?(\d+:\d+[abc]?( *[\-,] *\d+[abc]?)*))+
Test String:
Col. 13:14-16; 1 Cor. 15:45; Matt. 28:19; John 14:9-10, 16-17, 20, 23; Col. 13:14-16; 1 Cor. 15:45; Matt. 1:16, 21, 23; Col. 1:15; Acts 1:8; John 15:26; Gal. 3:13; 1 Pet. 2:24
Há 2 ocorrências da referencia "1 Cor. 15:45" no test string.
a 2a ocorrência de "1 Cor. 15:45" o "1 " não eh reconhecido.. pega apenas a partir de "Cor." pra frente.
Porem a 1ra ocorrência, pega tudo !
E isso acontece em outros lugares tbm.
Grato por qq ajuda, pois já gastamos alguns neurônios nisso e não encontramos solução.
Também é muito bem vindo alguma melhoria nessa Regex, pois não somos especialistas no assunto, apenas lemos o livro do Aurélio, do Júlio e umas pesquisadas no Google.
Forte Abraço
MiShell ;-)
echo "38498623798315430116174552327142800912294602133407093483096115302909743809121251297856778P"|dc