+1 voto
177 visualizações

A seguinte Regex permitirá comparar dois projetos com a marcação do nome divino \nd …\nd* no Paratext Find e usando Remove From List, para ver onde o número de instâncias em um versículo difere. As configurações precisam estar sem nenhuma restrição. Não funcionará se Match Only in Verse Text estiver marcado.

regex:(?<=\\v\s\S+\s)((?!\\(v|m?s|nd)).)*(\\nd [^\\]*?\\nd\*)){1,1}((?!\\(v|m?s|nd|c)).)*(?=\\(v|s|c)|\Z)

Esta regex permite encontrar versículos com um número especificado de spans \nd no texto:

  • {1,1} um e apenas um
  • {1} exatamente um (igual ao acima)
  • {2,} dois ou mais
  • {0,0} Nenhum

Ela não encontra a marcação \nd em títulos de seção, nem encontrará a marcação \+nd

Problemas

  • Como não encontra a marcação \+nd, não encontrará \+nd em texto regular (raro).
  • Não encontrará \nd em um versículo parcial que segue um título de seção (raro).

A seguinte Regex encontrará txt em spans \+nd …\+nd* em texto regular e notas de rodapé: .

regex:(?<=\\v\s\S+\s)(((?!\\(v|m?s|\+nd)).)*(\\\+?nd [^\\]*?\\\+?nd\*)){1,1}((?!\\(v|m?s|\+nd)).)*(?=\\(v|m?s)|\Z)

Problemas

  • Como encontrará a marcação \+nd, encontrará \+nd em notas de rodapé (comum).

Se quisermos usar isso para comparar uma tradução em inglês que usa a marcação \nd com uma tradução que usa uma palavra única sem marcação para YHWH, podemos adicionar a palavra à busca. Para o francês, procuraremos por Eternel

regex:(?<=\\v\s\S+\s)(((?!\\(v|m?s|nd)|Eternel).)*(\\\+?nd [^\\]*?\\\+?nd\*|Eternel)){1,1}((?!\\(v|m?s|nd)|Eternel).)*(?=\\v|m?s)|\Z)

Como Eternel também ocorre em notas de rodapé, queremos pular a busca do texto em notas de rodapé. O seguinte Schema permitirá pular o texto (como um span de nota de rodapé) ao fazer a correspondência:

schema:(?<=<start>)(((?!<selector>).)*((<skipSpan>((?!<selector>).)*)*<requiredSpan>)){Min,Max}((?!<selector>).)*(<skipSpan>((?!<selector>).)*)*(?=<end>|\Z)

Para o <selector>, veja: Regex Examples: Matching Whole Lines of Text That Satisfy Certain Requirements

Se sua condição for que uma linha não deve conter algo, use negative lookahead. ^((?!regexp).)*$ corresponde a uma linha completa que não corresponde a regexp.

Vamos aplicar isso para pular o texto em notas de rodapé. Somos obrigados a corresponder a \nd e spans \+nd e Eternel:

<start>         \\v\s\S+\s                         ; Start at verse
<end>           \\(v|m?s)                          ; End at verse or section heading 
<end>|\Z        \\(v|m?s)|\Z                       ; For final context add \Z to select end of Chapter
<requiredStart> \\\+?nd|Eternel                    ; \nd markup optionally embedded and "Eternel"
<requiredSpan>  (\\\+?nd [^\\]*?\\\+?nd\*|Eternel) ; The entire \nd phrase or "Eternel"
<skipStart>     \\f\s                              ; Beginning of a footnote
<skipSpan>      (\\f\s((?!\\f\*).)*\\f\*)          ; The entire footnote
<selector>      <end>|<skipStart>|<requiredStart>  ; Combine all of the selection restrictions 
    =>          \\(v|m?s)|\\f\s|\\\+?ndEternel     ; which simplifies to 
    =>          \\(v|m?s|f\s|\+?nd)|Eternel

Regex completa:
regex:(?<=\\v\s\S+\s)(((?!\\(v|m?s|f\s|\+?nd)|Eternel).)*(((\\f\s((?!\\f\*).)*\\f\*)((?!\\(v|m?s|f\s|\+?nd)|Eternel).)*)*(\\\+?nd[^\\]*?\\\+?nd\*|Eternel))){1,1}((?!\\(v|m?s|f\s|\+?nd)|Eternel).)*((\\f\s([^\\]|\\(?!f\*))*\\f\*)((?!\\(v|m?s|f\s|\+?nd)|Eternel).)*)*(?=(\\(v|m?s))|\Z)

Tradução automática de English
Paratext por (1,8k pontos)
reexibida | 177 visualizações

Por favor, faça login ou registre-se para responder a esta pergunta.

Perguntas relacionadas

0 votos
1 resposta 475 visualizações
A couple of days ago user 1 reported to me that in one PT8 project, the text direction somehow changed to ... are managed by two different organizations. How could this happen?
anon895417 129 perguntada Dez 4, 2017
0 votos
8 respostas 2,3k visualizações
We have a user who has inserted a lot of \pn and some \nd inside of footnotes. We now know we need those to be ... the search to inside of a single footnote? Thank you, MSEAIT/LT
MSEAIT_LT 478 perguntada Ago 20, 2018
0 votos
0 respostas 175 visualizações
To compare the versions of a project in which there were changes: Click in the window of the project to make it the ... how-do-i-compare-a-word-or-phrase-in-different-projects/19)
[Expert]
anon421222
735
perguntada Fev 23, 2017
0 votos
2 respostas 373 visualizações
Os marcadores \pn e \nd em títulos resultam em texto que não possui todos os outros atributos de caractere do ... como erros. Como esses marcadores devem ser usados em títulos?
anon015155 153 perguntada Set 26, 2018
0 votos
2 respostas 737 visualizações
Preciso descobrir qual porcentagem de cada livro já foi rascunhada. Uma contagem de quantos versículos em cada livro contêm ... ajuda que possam me dar com isso. John Nystrom
john_nystrom 312 perguntada Ago 21, 2024
Welcome to Support Bible, where you can ask questions and receive answers from other members of the community.
For just as each of us has one body with many members, and these members do not all have the same function, so in Christ we, though many, form one body, and each member belongs to all the others.
Romans 12:4-5
3,054 perguntas
6,014 respostas
5,677 comentários
2,033 usuários