Página 3 de 4 PrimerPrimer 1234 ÚltimoÚltimo
Resultados 61 al 90 de 109

Tema: Guía para reducción de longitud de líneas

  1. #61
    Subtitulador Avatar de tiodrock
    Fecha de ingreso
    15-04-2010
    Ubicación
    Hurlingham
    Mensajes
    18,036
    Agradecimientos: 24759


    Seguir a tiodrock en Twitter

    Predeterminado

    Sí, mcozeti, esos son post que salen iguales desde los comienzos, quizás abría que darles una mirada para evitar este tipo de confusiones.

    Recuerden siempre que esta es una comunidad para dar y recibir y no un sitio de descarga.
    Participa activamente comentando y compartiendo.

  2. #62
    Amigos de SubAdictos Avatar de paconaranjo
    Fecha de ingreso
    08-04-2011
    Mensajes
    518
    Agradecimientos: 365

    Predeterminado

    Corregidos los errores del OCR para añadir espacio al guión en los diálogos:


    Spoiler:
    SPOILER:
    <!-- Espacios después del guión -->
    <ERROR UseREOnlyToFind="True" Find="^(-)[^ ]" ReplaceBy="- ">
    <ERROR UseREOnlyToFind="True" Find="\n(-)[^ ]" ReplaceBy="- ">



    Reduje el OCR de los acentos en preguntas a la mitad usando la opción de preservar caso:

    Spoiler:
    SPOILER:
    <!-- Acentos al principio de los signos de interrogación mayúsculas y minúsculas -->
    <ERROR UseRE="False" Find="¿aun" WholeWord="True" PreserveCase="True" ReplaceBy="¿aún">
    <ERROR UseRE="False" Find="¿tu" WholeWord="True" PreserveCase="True" ReplaceBy="¿tú">
    <ERROR UseRE="False" Find="¿que" WholeWord="True" PreserveCase="True" ReplaceBy="¿qué">
    <ERROR UseRE="False" Find="¿sabes que" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabes qué">
    <ERROR UseRE="False" Find="¿sabes adonde" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabes adónde">
    <ERROR UseRE="False" Find="¿sabes cual" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabes cuál">
    <ERROR UseRE="False" Find="¿sabes quien" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabes quién">
    <ERROR UseRE="False" Find="¿sabes como" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabes cómo">
    <ERROR UseRE="False" Find="¿sabes cuan" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabes cuán">
    <ERROR UseRE="False" Find="¿sabes cuanto" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabes cuánto">
    <ERROR UseRE="False" Find="¿sabes cuanta" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabes cuánta">
    <ERROR UseRE="False" Find="¿sabes cuantos" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabes cuántos">
    <ERROR UseRE="False" Find="¿sabes cuantas" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabes cuántas">
    <ERROR UseRE="False" Find="¿sabes cuando" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabes cuándo">
    <ERROR UseRE="False" Find="¿sabes donde" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabes dónde">
    <ERROR UseRE="False" Find="¿sabe que" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabe qué">
    <ERROR UseRE="False" Find="¿sabe adonde" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabe adónde">
    <ERROR UseRE="False" Find="¿sabe cual" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabe cuál">
    <ERROR UseRE="False" Find="¿sabe quien" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabe quién">
    <ERROR UseRE="False" Find="¿sabe como" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabe cómo">
    <ERROR UseRE="False" Find="¿sabe cuan" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabe cuán">
    <ERROR UseRE="False" Find="¿sabe cuanto" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabe cuánto">
    <ERROR UseRE="False" Find="¿sabe cuanta" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabe cuánta">
    <ERROR UseRE="False" Find="¿sabe cuantos" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabe cuántos">
    <ERROR UseRE="False" Find="¿sabe cuantas" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabe cuántas">
    <ERROR UseRE="False" Find="¿sabe cuando" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabe cuándo">
    <ERROR UseRE="False" Find="¿sabe donde" WholeWord="True" PreserveCase="True" ReplaceBy="¿sabe dónde">
    <ERROR UseRE="False" Find="¿saben que" WholeWord="True" PreserveCase="True" ReplaceBy="¿saben qué">
    <ERROR UseRE="False" Find="¿saben adonde" WholeWord="True" PreserveCase="True" ReplaceBy="¿saben adónde">
    <ERROR UseRE="False" Find="¿saben cual" WholeWord="True" PreserveCase="True" ReplaceBy="¿saben cuál">
    <ERROR UseRE="False" Find="¿saben quien" WholeWord="True" PreserveCase="True" ReplaceBy="¿saben quién">
    <ERROR UseRE="False" Find="¿saben como" WholeWord="True" PreserveCase="True" ReplaceBy="¿saben cómo">
    <ERROR UseRE="False" Find="¿saben cuan" WholeWord="True" PreserveCase="True" ReplaceBy="¿saben cuán">
    <ERROR UseRE="False" Find="¿saben cuanto" WholeWord="True" PreserveCase="True" ReplaceBy="¿saben cuánto">
    <ERROR UseRE="False" Find="¿saben cuanta" WholeWord="True" PreserveCase="True" ReplaceBy="¿saben cuánta">
    <ERROR UseRE="False" Find="¿saben cuantos" WholeWord="True" PreserveCase="True" ReplaceBy="¿saben cuántos">
    <ERROR UseRE="False" Find="¿saben cuantas" WholeWord="True" PreserveCase="True" ReplaceBy="¿saben cuántas">
    <ERROR UseRE="False" Find="¿saben cuando" WholeWord="True" PreserveCase="True" ReplaceBy="¿saben cuándo">
    <ERROR UseRE="False" Find="¿saben donde" WholeWord="True" PreserveCase="True" ReplaceBy="¿saben dónde">
    <ERROR UseRE="False" Find="¿de que" WholeWord="True" PreserveCase="True" ReplaceBy="¿de qué">
    <ERROR UseRE="False" Find="¿de donde" WholeWord="True" PreserveCase="True" ReplaceBy="¿de dónde">
    <ERROR UseRE="False" Find="¿de cual" WholeWord="True" PreserveCase="True" ReplaceBy="¿de cuál">
    <ERROR UseRE="False" Find="¿de quien" WholeWord="True" PreserveCase="True" ReplaceBy="¿de quién">
    <ERROR UseRE="False" Find="¿de cuanto" WholeWord="True" PreserveCase="True" ReplaceBy="¿de cuánto">
    <ERROR UseRE="False" Find="¿de cuanta" WholeWord="True" PreserveCase="True" ReplaceBy="¿de cuánta">
    <ERROR UseRE="False" Find="¿de cuantos" WholeWord="True" PreserveCase="True" ReplaceBy="¿de cuántos">
    <ERROR UseRE="False" Find="¿de cuantas" WholeWord="True" PreserveCase="True" ReplaceBy="¿de cuántas">
    <ERROR UseRE="False" Find="¿de cuando" WholeWord="True" PreserveCase="True" ReplaceBy="¿de cuándo">
    <ERROR UseRE="False" Find="¿a que" WholeWord="True" PreserveCase="True" ReplaceBy="¿a qué">
    <ERROR UseRE="False" Find="¿sobre que" WholeWord="True" PreserveCase="True" ReplaceBy="¿sobre qué">
    <ERROR UseRE="False" Find="¿como" WholeWord="True" PreserveCase="True" ReplaceBy="¿cómo">
    <ERROR UseRE="False" Find="¿cual" WholeWord="True" PreserveCase="True" ReplaceBy="¿cuál">
    <ERROR UseRE="False" Find="¿en cual" WholeWord="True" PreserveCase="True" ReplaceBy="¿en cuál">
    <ERROR UseRE="False" Find="¿cuando" WholeWord="True" PreserveCase="True" ReplaceBy="¿cuándo">
    <ERROR UseRE="False" Find="¿hasta cual" WholeWord="True" PreserveCase="True" ReplaceBy="¿hasta cuál">
    <ERROR UseRE="False" Find="¿hasta quien" WholeWord="True" PreserveCase="True" ReplaceBy="¿hasta quién">
    <ERROR UseRE="False" Find="¿hasta cuanto" WholeWord="True" PreserveCase="True" ReplaceBy="¿hasta cuánto">
    <ERROR UseRE="False" Find="¿hasta cuantas" WholeWord="True" PreserveCase="True" ReplaceBy="¿hasta cuántas">
    <ERROR UseRE="False" Find="¿hasta cuantos" WholeWord="True" PreserveCase="True" ReplaceBy="¿hasta cuántos">
    <ERROR UseRE="False" Find="¿hasta cuando" WholeWord="True" PreserveCase="True" ReplaceBy="¿hasta cuándo">
    <ERROR UseRE="False" Find="¿hasta cuando" WholeWord="True" PreserveCase="True" ReplaceBy="¿hasta cuándo">
    <ERROR UseRE="False" Find="¿hasta donde" WholeWord="True" PreserveCase="True" ReplaceBy="¿hasta dónde">
    <ERROR UseRE="False" Find="¿hasta que" WholeWord="True" PreserveCase="True" ReplaceBy="¿hasta qué">
    <ERROR UseRE="False" Find="¿hasta adonde" WholeWord="True" PreserveCase="True" ReplaceBy="¿hasta adónde">
    <ERROR UseRE="False" Find="¿desde que" WholeWord="True" PreserveCase="True" ReplaceBy="¿desde qué">
    <ERROR UseRE="False" Find="¿desde cuando" WholeWord="True" PreserveCase="True" ReplaceBy="¿desde cuándo">
    <ERROR UseRE="False" Find="¿desde quien" WholeWord="True" PreserveCase="True" ReplaceBy="¿desde quién">
    <ERROR UseRE="False" Find="¿desde donde" WholeWord="True" PreserveCase="True" ReplaceBy="¿desde dónde">
    <ERROR UseRE="False" Find="¿cuanto" WholeWord="True" PreserveCase="True" ReplaceBy="¿cuánto">
    <ERROR UseRE="False" Find="¿cuantos" WholeWord="True" PreserveCase="True" ReplaceBy="¿cuántos">
    <ERROR UseRE="False" Find="¿donde" WholeWord="True" PreserveCase="True" ReplaceBy="¿dónde">
    <ERROR UseRE="False" Find="¿adonde" WholeWord="True" PreserveCase="True" ReplaceBy="¿adónde">
    <ERROR UseRE="False" Find="¿con que" WholeWord="True" PreserveCase="True" ReplaceBy="¿con qué">
    <ERROR UseRE="False" Find="¿con cual" WholeWord="True" PreserveCase="True" ReplaceBy="¿con cuál">
    <ERROR UseRE="False" Find="¿con quien" WholeWord="True" PreserveCase="True" ReplaceBy="¿con quién">
    <ERROR UseRE="False" Find="¿con cuantos" WholeWord="True" PreserveCase="True" ReplaceBy="¿con cuántos">
    <ERROR UseRE="False" Find="¿con cuantas" WholeWord="True" PreserveCase="True" ReplaceBy="¿con cuántas">
    <ERROR UseRE="False" Find="¿con cuanta" WholeWord="True" PreserveCase="True" ReplaceBy="¿con cuánta">
    <ERROR UseRE="False" Find="¿con cuanto" WholeWord="True" PreserveCase="True" ReplaceBy="¿con cuánto">
    <ERROR UseRE="False" Find="¿para donde" WholeWord="True" PreserveCase="True" ReplaceBy="¿para dónde">
    <ERROR UseRE="False" Find="¿para adonde" WholeWord="True" PreserveCase="True" ReplaceBy="¿para adónde">
    <ERROR UseRE="False" Find="¿para cuando" WholeWord="True" PreserveCase="True" ReplaceBy="¿para cuándo">
    <ERROR UseRE="False" Find="¿para que" WholeWord="True" PreserveCase="True" ReplaceBy="¿para qué">
    <ERROR UseRE="False" Find="¿para quien" WholeWord="True" PreserveCase="True" ReplaceBy="¿para quién">
    <ERROR UseRE="False" Find="¿para cuanto" WholeWord="True" PreserveCase="True" ReplaceBy="¿para cuánto">
    <ERROR UseRE="False" Find="¿para cuanta" WholeWord="True" PreserveCase="True" ReplaceBy="¿para cuánta">
    <ERROR UseRE="False" Find="¿para cuantos" WholeWord="True" PreserveCase="True" ReplaceBy="¿para cuántos">
    <ERROR UseRE="False" Find="¿para cuantas" WholeWord="True" PreserveCase="True" ReplaceBy="¿para cuántas">
    <ERROR UseRE="False" Find="¿a donde" WholeWord="True" PreserveCase="True" ReplaceBy="¿a dónde">
    <ERROR UseRE="False" Find="¿a cual" WholeWord="True" PreserveCase="True" ReplaceBy="¿a cuál">
    <ERROR UseRE="False" Find="¿a quien" WholeWord="True" PreserveCase="True" ReplaceBy="¿a quien">
    <ERROR UseRE="False" Find="¿a como" WholeWord="True" PreserveCase="True" ReplaceBy="¿a cómo">
    <ERROR UseRE="False" Find="¿a cuanto" WholeWord="True" PreserveCase="True" ReplaceBy="¿a cuánto">
    <ERROR UseRE="False" Find="¿a cuanta" WholeWord="True" PreserveCase="True" ReplaceBy="¿a cuánta">
    <ERROR UseRE="False" Find="¿a cuantos" WholeWord="True" PreserveCase="True" ReplaceBy="¿a cuántos">
    <ERROR UseRE="False" Find="¿a cuantas" WholeWord="True" PreserveCase="True" ReplaceBy="¿a cuántas">
    <ERROR UseRE="False" Find="¿por que" WholeWord="True" PreserveCase="True" ReplaceBy="¿por qué">
    <ERROR UseRE="False" Find="¿por cual" WholeWord="True" PreserveCase="True" ReplaceBy="¿por cuál">
    <ERROR UseRE="False" Find="¿por quien" WholeWord="True" PreserveCase="True" ReplaceBy="¿por quién">
    <ERROR UseRE="False" Find="¿por cuanto" WholeWord="True" PreserveCase="True" ReplaceBy="¿por cuánto">
    <ERROR UseRE="False" Find="¿por cuanta" WholeWord="True" PreserveCase="True" ReplaceBy="¿por cuánta">
    <ERROR UseRE="False" Find="¿por cuantos" WholeWord="True" PreserveCase="True" ReplaceBy="¿por cuántos">
    <ERROR UseRE="False" Find="¿por cuantas" WholeWord="True" PreserveCase="True" ReplaceBy="¿por cuántas">
    <ERROR UseRE="False" Find="¿por donde" WholeWord="True" PreserveCase="True" ReplaceBy="¿por dónde">
    <ERROR UseRE="False" Find="¿porque" WholeWord="True" PreserveCase="True" ReplaceBy="¿por qué">
    <ERROR UseRE="False" Find="¿porqué" WholeWord="True" PreserveCase="True" ReplaceBy="¿por qué">
    <ERROR UseRE="False" Find="¿y que" WholeWord="True" PreserveCase="True" ReplaceBy="¿y qué">
    <ERROR UseRE="False" Find="¿y como" WholeWord="True" PreserveCase="True" ReplaceBy="¿y cómo">
    <ERROR UseRE="False" Find="¿y cuando" WholeWord="True" PreserveCase="True" ReplaceBy="¿y cuándo">
    <ERROR UseRE="False" Find="¿y cual" WholeWord="True" PreserveCase="True" ReplaceBy="¿y cuál">
    <ERROR UseRE="False" Find="¿y quien" WholeWord="True" PreserveCase="True" ReplaceBy="¿y quién">
    <ERROR UseRE="False" Find="¿y cuanto" WholeWord="True" PreserveCase="True" ReplaceBy="¿y cuánto">
    <ERROR UseRE="False" Find="¿y cuanta" WholeWord="True" PreserveCase="True" ReplaceBy="¿y cuánta">
    <ERROR UseRE="False" Find="¿y cuantos" WholeWord="True" PreserveCase="True" ReplaceBy="¿y cuántos">
    <ERROR UseRE="False" Find="¿y cuantas" WholeWord="True" PreserveCase="True" ReplaceBy="¿y cuántas">
    <ERROR UseRE="False" Find="¿y donde" WholeWord="True" PreserveCase="True" ReplaceBy="¿y dónde">
    <ERROR UseRE="False" Find="¿y adonde" WholeWord="True" PreserveCase="True" ReplaceBy="¿y adónde">
    <ERROR UseRE="False" Find="¿quien" WholeWord="True" PreserveCase="True" ReplaceBy="¿quién">
    <ERROR UseRE="False" Find="¿esta" WholeWord="True" PreserveCase="True" ReplaceBy="¿está">
    <ERROR UseRE="False" Find="¿estas" WholeWord="True" PreserveCase="True" ReplaceBy="¿estás">


    Expresiones para corregir signos cuando hay un diálogo:

    Spoiler:
    SPOILER:
    <ERROR UseREOnlyToFind="True" Find="-( A)[^¿\n]+\?" ReplaceBy=" ¿A">
    <ERROR UseREOnlyToFind="True" Find="-( B)[^¿\n]+\?" ReplaceBy=" ¿B">
    <ERROR UseREOnlyToFind="True" Find="-( C)[^¿\n]+\?" ReplaceBy=" ¿C">
    <ERROR UseREOnlyToFind="True" Find="-( D)[^¿\n]+\?" ReplaceBy=" ¿D">
    <ERROR UseREOnlyToFind="True" Find="-( E)[^¿\n]+\?" ReplaceBy=" ¿E">
    <ERROR UseREOnlyToFind="True" Find="-( F)[^¿\n]+\?" ReplaceBy=" ¿F">
    <ERROR UseREOnlyToFind="True" Find="-( G)[^¿\n]+\?" ReplaceBy=" ¿G">
    <ERROR UseREOnlyToFind="True" Find="-( H)[^¿\n]+\?" ReplaceBy=" ¿H">
    <ERROR UseREOnlyToFind="True" Find="-( I)[^¿\n]+\?" ReplaceBy=" ¿I">
    <ERROR UseREOnlyToFind="True" Find="-( J)[^¿\n]+\?" ReplaceBy=" ¿J">
    <ERROR UseREOnlyToFind="True" Find="-( K)[^¿\n]+\?" ReplaceBy=" ¿K">
    <ERROR UseREOnlyToFind="True" Find="-( L)[^¿\n]+\?" ReplaceBy=" ¿L">
    <ERROR UseREOnlyToFind="True" Find="-( M)[^¿\n]+\?" ReplaceBy=" ¿M">
    <ERROR UseREOnlyToFind="True" Find="-( N)[^¿\n]+\?" ReplaceBy=" ¿N">
    <ERROR UseREOnlyToFind="True" Find="-( Ñ)[^¿\n]+\?" ReplaceBy=" ¿Ñ">
    <ERROR UseREOnlyToFind="True" Find="-( O)[^¿\n]+\?" ReplaceBy=" ¿O">
    <ERROR UseREOnlyToFind="True" Find="-( P)[^¿\n]+\?" ReplaceBy=" ¿P">
    <ERROR UseREOnlyToFind="True" Find="-( Q)[^¿\n]+\?" ReplaceBy=" ¿Q">
    <ERROR UseREOnlyToFind="True" Find="-( R)[^¿\n]+\?" ReplaceBy=" ¿R">
    <ERROR UseREOnlyToFind="True" Find="-( S)[^¿\n]+\?" ReplaceBy=" ¿S">
    <ERROR UseREOnlyToFind="True" Find="-( T)[^¿\n]+\?" ReplaceBy=" ¿T">
    <ERROR UseREOnlyToFind="True" Find="-( U)[^¿\n]+\?" ReplaceBy=" ¿U">
    <ERROR UseREOnlyToFind="True" Find="-( V)[^¿\n]+\?" ReplaceBy=" ¿V">
    <ERROR UseREOnlyToFind="True" Find="-( W)[^¿\n]+\?" ReplaceBy=" ¿W">
    <ERROR UseREOnlyToFind="True" Find="-( X)[^¿\n]+\?" ReplaceBy=" ¿X">
    <ERROR UseREOnlyToFind="True" Find="-( Y)[^¿\n]+\?" ReplaceBy=" ¿Y">
    <ERROR UseREOnlyToFind="True" Find="-( Z)[^¿\n]+\?" ReplaceBy=" ¿Z">
    <ERROR UseREOnlyToFind="True" Find="-( Á)[^¿\n]+\?" ReplaceBy=" ¿Á">
    <ERROR UseREOnlyToFind="True" Find="-( É)[^¿\n]+\?" ReplaceBy=" ¿É">
    <ERROR UseREOnlyToFind="True" Find="-( Í)[^¿\n]+\?" ReplaceBy=" ¿Í">
    <ERROR UseREOnlyToFind="True" Find="-( Ó)[^¿\n]+\?" ReplaceBy=" ¿Ó">
    <ERROR UseREOnlyToFind="True" Find="-( Ú)[^¿\n]+\?" ReplaceBy=" ¿Ú">
    <ERROR UseREOnlyToFind="True" Find="-( A)[^¡\n]+\!" ReplaceBy=" ¡A">
    <ERROR UseREOnlyToFind="True" Find="-( B)[^¡\n]+\!" ReplaceBy=" ¡B">
    <ERROR UseREOnlyToFind="True" Find="-( C)[^¡\n]+\!" ReplaceBy=" ¡C">
    <ERROR UseREOnlyToFind="True" Find="-( D)[^¡\n]+\!" ReplaceBy=" ¡D">
    <ERROR UseREOnlyToFind="True" Find="-( E)[^¡\n]+\!" ReplaceBy=" ¡E">
    <ERROR UseREOnlyToFind="True" Find="-( F)[^¡\n]+\!" ReplaceBy=" ¡F">
    <ERROR UseREOnlyToFind="True" Find="-( G)[^¡\n]+\!" ReplaceBy=" ¡G">
    <ERROR UseREOnlyToFind="True" Find="-( H)[^¡\n]+\!" ReplaceBy=" ¡H">
    <ERROR UseREOnlyToFind="True" Find="-( I)[^¡\n]+\!" ReplaceBy=" ¡I">
    <ERROR UseREOnlyToFind="True" Find="-( J)[^¡\n]+\!" ReplaceBy=" ¡J">
    <ERROR UseREOnlyToFind="True" Find="-( K)[^¡\n]+\!" ReplaceBy=" ¡K">
    <ERROR UseREOnlyToFind="True" Find="-( L)[^¡\n]+\!" ReplaceBy=" ¡L">
    <ERROR UseREOnlyToFind="True" Find="-( M)[^¡\n]+\!" ReplaceBy=" ¡M">
    <ERROR UseREOnlyToFind="True" Find="-( N)[^¡\n]+\!" ReplaceBy=" ¡N">
    <ERROR UseREOnlyToFind="True" Find="-( Ñ)[^¡\n]+\!" ReplaceBy=" ¡Ñ">
    <ERROR UseREOnlyToFind="True" Find="-( O)[^¡\n]+\!" ReplaceBy=" ¡O">
    <ERROR UseREOnlyToFind="True" Find="-( P)[^¡\n]+\!" ReplaceBy=" ¡P">
    <ERROR UseREOnlyToFind="True" Find="-( Q)[^¡\n]+\!" ReplaceBy=" ¡Q">
    <ERROR UseREOnlyToFind="True" Find="-( R)[^¡\n]+\!" ReplaceBy=" ¡R">
    <ERROR UseREOnlyToFind="True" Find="-( S)[^¡\n]+\!" ReplaceBy=" ¡S">
    <ERROR UseREOnlyToFind="True" Find="-( T)[^¡\n]+\!" ReplaceBy=" ¡T">
    <ERROR UseREOnlyToFind="True" Find="-( U)[^¡\n]+\!" ReplaceBy=" ¡U">
    <ERROR UseREOnlyToFind="True" Find="-( V)[^¡\n]+\!" ReplaceBy=" ¡V">
    <ERROR UseREOnlyToFind="True" Find="-( W)[^¡\n]+\!" ReplaceBy=" ¡W">
    <ERROR UseREOnlyToFind="True" Find="-( X)[^¡\n]+\!" ReplaceBy=" ¡X">
    <ERROR UseREOnlyToFind="True" Find="-( Y)[^¡\n]+\!" ReplaceBy=" ¡Y">
    <ERROR UseREOnlyToFind="True" Find="-( Z)[^¡\n]+\!" ReplaceBy=" ¡Z">
    <ERROR UseREOnlyToFind="True" Find="-( Á)[^¡\n]+\!" ReplaceBy=" ¡Á">
    <ERROR UseREOnlyToFind="True" Find="-( É)[^¡\n]+\!" ReplaceBy=" ¡É">
    <ERROR UseREOnlyToFind="True" Find="-( Í)[^¡\n]+\!" ReplaceBy=" ¡Í">
    <ERROR UseREOnlyToFind="True" Find="-( Ó)[^¡\n]+\!" ReplaceBy=" ¡Ó">
    <ERROR UseREOnlyToFind="True" Find="-( Ú)[^¡\n]+\!" ReplaceBy=" ¡Ú">


    PD: Hay un pequeño error en la forma en que funcionan las expresiones regulares en SW (relacionada con el comando \n "salto de línea" y otros caracteres que le anteceden), debido a este problema me está siendo muy difícil encontrar la forma de poner los signos de apertura, estoy tratando de darle vueltas pero sin éxito. Espero encontrar una solución.
    Última edición por paconaranjo; 05-06-2014 a las 23:47:36

  3. #63
    Amigos de SubAdictos Avatar de paconaranjo
    Fecha de ingreso
    08-04-2011
    Mensajes
    518
    Agradecimientos: 365

    Predeterminado

    Aquí les traigo la beta 5, esta tiene muchas mejoras y algunos errores detectados ya reparados.

    Incluye la corrección de signos de admiración e interrogación hasta donde se pudo, debido a los límites de las expresiones regulares manejadas por SW, ya que para las regex casi no hay límites. Esto es hasta que encuentre una solución. Por el momento corrige bastantes casos y lo hace muy bien, hay dos casos que no los corrige, y tiene que hacerse una revisión manual, para la cual hice otra expresión que detecta el posible error para corregirlo manualmente.

    La corrección quedó de la siguiente manera:


    Spoiler:
    SPOILER:
    <!-- Signos faltantes -->
    <!-- Detecta cuando una línea empieza con minúsculas y termina con un signo de cierre, -->
    <!-- esto es útil para verificar si el subtítulo anterior contiene el signo de apertura -->

    <ERROR Find="^[a-zá-úñü\x22«][^¿]+\?">
    <ERROR Find="^[a-zá-úñü\x22«][^¡]+\!">
    <!-- Detecta si en la segunda línea falta un signo de apertura cuando esta empieza con mayúscula -->
    <ERROR Find="(?m)^[A-ZÁ-ÚÑ][\wá-úñü,\x22«»\s]+[\!\?]">
    <!-- Detecta cuando está abierto más de un signo de apertura para seleccionar cúal se elimina -->
    <!-- ya que cuando hay dos máyusculas la expresión pone signo en ambas mayúsculas por una única vez -->

    <ERROR Find="¿[^\?]+(¿)">
    <ERROR Find="¡[^\!]+(¡)">
    <!-- Detecta si no hay un signo de apertura antes de una mayúscula y de un signo de cierre -->
    <!-- incluido cuando acaba en tres puntos -->

    <ERROR UseREOnlyToFind="True" Find="[^¿](A)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿A">
    <ERROR UseREOnlyToFind="True" Find="[^¿](B)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿B">
    <ERROR UseREOnlyToFind="True" Find="[^¿](C)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿C">
    <ERROR UseREOnlyToFind="True" Find="[^¿](D)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿D">
    <ERROR UseREOnlyToFind="True" Find="[^¿](E)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿E">
    <ERROR UseREOnlyToFind="True" Find="[^¿](F)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿F">
    <ERROR UseREOnlyToFind="True" Find="[^¿](G)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿G">
    <ERROR UseREOnlyToFind="True" Find="[^¿](H)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿H">
    <ERROR UseREOnlyToFind="True" Find="[^¿](I)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿I">
    <ERROR UseREOnlyToFind="True" Find="[^¿](J)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿J">
    <ERROR UseREOnlyToFind="True" Find="[^¿](K)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿K">
    <ERROR UseREOnlyToFind="True" Find="[^¿](L)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿L">
    <ERROR UseREOnlyToFind="True" Find="[^¿](M)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿M">
    <ERROR UseREOnlyToFind="True" Find="[^¿](N)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿N">
    <ERROR UseREOnlyToFind="True" Find="[^¿](Ñ)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿Ñ">
    <ERROR UseREOnlyToFind="True" Find="[^¿](O)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿O">
    <ERROR UseREOnlyToFind="True" Find="[^¿](P)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿P">
    <ERROR UseREOnlyToFind="True" Find="[^¿](Q)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿Q">
    <ERROR UseREOnlyToFind="True" Find="[^¿](R)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿R">
    <ERROR UseREOnlyToFind="True" Find="[^¿](S)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿S">
    <ERROR UseREOnlyToFind="True" Find="[^¿](T)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿T">
    <ERROR UseREOnlyToFind="True" Find="[^¿](U)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿U">
    <ERROR UseREOnlyToFind="True" Find="[^¿](V)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿V">
    <ERROR UseREOnlyToFind="True" Find="[^¿](W)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿W">
    <ERROR UseREOnlyToFind="True" Find="[^¿](X)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿X">
    <ERROR UseREOnlyToFind="True" Find="[^¿](Y)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿Y">
    <ERROR UseREOnlyToFind="True" Find="[^¿](Z)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿Z">
    <ERROR UseREOnlyToFind="True" Find="[^¿](Á)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿Á">
    <ERROR UseREOnlyToFind="True" Find="[^¿](É)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿É">
    <ERROR UseREOnlyToFind="True" Find="[^¿](Í)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿Í">
    <ERROR UseREOnlyToFind="True" Find="[^¿](Ó)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿Ó">
    <ERROR UseREOnlyToFind="True" Find="[^¿](Ú)[\wá-úñü,\x22«»\s]+\.{3}?\?" ReplaceBy="¿Ú">
    <ERROR UseREOnlyToFind="True" Find="[^¡](A)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡A">
    <ERROR UseREOnlyToFind="True" Find="[^¡](B)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡B">
    <ERROR UseREOnlyToFind="True" Find="[^¡](C)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡C">
    <ERROR UseREOnlyToFind="True" Find="[^¡](D)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡D">
    <ERROR UseREOnlyToFind="True" Find="[^¡](E)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡E">
    <ERROR UseREOnlyToFind="True" Find="[^¡](F)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡F">
    <ERROR UseREOnlyToFind="True" Find="[^¡](G)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡G">
    <ERROR UseREOnlyToFind="True" Find="[^¡](H)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡H">
    <ERROR UseREOnlyToFind="True" Find="[^¡](I)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡I">
    <ERROR UseREOnlyToFind="True" Find="[^¡](J)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡J">
    <ERROR UseREOnlyToFind="True" Find="[^¡](K)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡K">
    <ERROR UseREOnlyToFind="True" Find="[^¡](L)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡L">
    <ERROR UseREOnlyToFind="True" Find="[^¡](M)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡M">
    <ERROR UseREOnlyToFind="True" Find="[^¡](N)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡N">
    <ERROR UseREOnlyToFind="True" Find="[^¡](Ñ)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡Ñ">
    <ERROR UseREOnlyToFind="True" Find="[^¡](O)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡O">
    <ERROR UseREOnlyToFind="True" Find="[^¡](P)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡P">
    <ERROR UseREOnlyToFind="True" Find="[^¡](Q)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡Q">
    <ERROR UseREOnlyToFind="True" Find="[^¡](R)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡R">
    <ERROR UseREOnlyToFind="True" Find="[^¡](S)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡S">
    <ERROR UseREOnlyToFind="True" Find="[^¡](T)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡T">
    <ERROR UseREOnlyToFind="True" Find="[^¡](U)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡U">
    <ERROR UseREOnlyToFind="True" Find="[^¡](V)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡V">
    <ERROR UseREOnlyToFind="True" Find="[^¡](W)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡W">
    <ERROR UseREOnlyToFind="True" Find="[^¡](X)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡X">
    <ERROR UseREOnlyToFind="True" Find="[^¡](Y)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡Y">
    <ERROR UseREOnlyToFind="True" Find="[^¡](Z)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡Z">
    <ERROR UseREOnlyToFind="True" Find="[^¡](Á)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡Á">
    <ERROR UseREOnlyToFind="True" Find="[^¡](É)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡É">
    <ERROR UseREOnlyToFind="True" Find="[^¡](Í)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡Í">
    <ERROR UseREOnlyToFind="True" Find="[^¡](Ó)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡Ó">
    <ERROR UseREOnlyToFind="True" Find="[^¡](Ú)[\wá-úñü,\x22«»\s]+\.{3}?\!" ReplaceBy="¡Ú">
    <!-- Pone signos de apertura en los diálogos -->
    <ERROR UseREOnlyToFind="True" Find="-( A)[^¿\n]+\?" ReplaceBy=" ¿A">
    <ERROR UseREOnlyToFind="True" Find="-( B)[^¿\n]+\?" ReplaceBy=" ¿B">
    <ERROR UseREOnlyToFind="True" Find="-( C)[^¿\n]+\?" ReplaceBy=" ¿C">
    <ERROR UseREOnlyToFind="True" Find="-( D)[^¿\n]+\?" ReplaceBy=" ¿D">
    <ERROR UseREOnlyToFind="True" Find="-( E)[^¿\n]+\?" ReplaceBy=" ¿E">
    <ERROR UseREOnlyToFind="True" Find="-( F)[^¿\n]+\?" ReplaceBy=" ¿F">
    <ERROR UseREOnlyToFind="True" Find="-( G)[^¿\n]+\?" ReplaceBy=" ¿G">
    <ERROR UseREOnlyToFind="True" Find="-( H)[^¿\n]+\?" ReplaceBy=" ¿H">
    <ERROR UseREOnlyToFind="True" Find="-( I)[^¿\n]+\?" ReplaceBy=" ¿I">
    <ERROR UseREOnlyToFind="True" Find="-( J)[^¿\n]+\?" ReplaceBy=" ¿J">
    <ERROR UseREOnlyToFind="True" Find="-( K)[^¿\n]+\?" ReplaceBy=" ¿K">
    <ERROR UseREOnlyToFind="True" Find="-( L)[^¿\n]+\?" ReplaceBy=" ¿L">
    <ERROR UseREOnlyToFind="True" Find="-( M)[^¿\n]+\?" ReplaceBy=" ¿M">
    <ERROR UseREOnlyToFind="True" Find="-( N)[^¿\n]+\?" ReplaceBy=" ¿N">
    <ERROR UseREOnlyToFind="True" Find="-( Ñ)[^¿\n]+\?" ReplaceBy=" ¿Ñ">
    <ERROR UseREOnlyToFind="True" Find="-( O)[^¿\n]+\?" ReplaceBy=" ¿O">
    <ERROR UseREOnlyToFind="True" Find="-( P)[^¿\n]+\?" ReplaceBy=" ¿P">
    <ERROR UseREOnlyToFind="True" Find="-( Q)[^¿\n]+\?" ReplaceBy=" ¿Q">
    <ERROR UseREOnlyToFind="True" Find="-( R)[^¿\n]+\?" ReplaceBy=" ¿R">
    <ERROR UseREOnlyToFind="True" Find="-( S)[^¿\n]+\?" ReplaceBy=" ¿S">
    <ERROR UseREOnlyToFind="True" Find="-( T)[^¿\n]+\?" ReplaceBy=" ¿T">
    <ERROR UseREOnlyToFind="True" Find="-( U)[^¿\n]+\?" ReplaceBy=" ¿U">
    <ERROR UseREOnlyToFind="True" Find="-( V)[^¿\n]+\?" ReplaceBy=" ¿V">
    <ERROR UseREOnlyToFind="True" Find="-( W)[^¿\n]+\?" ReplaceBy=" ¿W">
    <ERROR UseREOnlyToFind="True" Find="-( X)[^¿\n]+\?" ReplaceBy=" ¿X">
    <ERROR UseREOnlyToFind="True" Find="-( Y)[^¿\n]+\?" ReplaceBy=" ¿Y">
    <ERROR UseREOnlyToFind="True" Find="-( Z)[^¿\n]+\?" ReplaceBy=" ¿Z">
    <ERROR UseREOnlyToFind="True" Find="-( Á)[^¿\n]+\?" ReplaceBy=" ¿Á">
    <ERROR UseREOnlyToFind="True" Find="-( É)[^¿\n]+\?" ReplaceBy=" ¿É">
    <ERROR UseREOnlyToFind="True" Find="-( Í)[^¿\n]+\?" ReplaceBy=" ¿Í">
    <ERROR UseREOnlyToFind="True" Find="-( Ó)[^¿\n]+\?" ReplaceBy=" ¿Ó">
    <ERROR UseREOnlyToFind="True" Find="-( Ú)[^¿\n]+\?" ReplaceBy=" ¿Ú">
    <ERROR UseREOnlyToFind="True" Find="-( A)[^¡\n]+\!" ReplaceBy=" ¡A">
    <ERROR UseREOnlyToFind="True" Find="-( B)[^¡\n]+\!" ReplaceBy=" ¡B">
    <ERROR UseREOnlyToFind="True" Find="-( C)[^¡\n]+\!" ReplaceBy=" ¡C">
    <ERROR UseREOnlyToFind="True" Find="-( D)[^¡\n]+\!" ReplaceBy=" ¡D">
    <ERROR UseREOnlyToFind="True" Find="-( E)[^¡\n]+\!" ReplaceBy=" ¡E">
    <ERROR UseREOnlyToFind="True" Find="-( F)[^¡\n]+\!" ReplaceBy=" ¡F">
    <ERROR UseREOnlyToFind="True" Find="-( G)[^¡\n]+\!" ReplaceBy=" ¡G">
    <ERROR UseREOnlyToFind="True" Find="-( H)[^¡\n]+\!" ReplaceBy=" ¡H">
    <ERROR UseREOnlyToFind="True" Find="-( I)[^¡\n]+\!" ReplaceBy=" ¡I">
    <ERROR UseREOnlyToFind="True" Find="-( J)[^¡\n]+\!" ReplaceBy=" ¡J">
    <ERROR UseREOnlyToFind="True" Find="-( K)[^¡\n]+\!" ReplaceBy=" ¡K">
    <ERROR UseREOnlyToFind="True" Find="-( L)[^¡\n]+\!" ReplaceBy=" ¡L">
    <ERROR UseREOnlyToFind="True" Find="-( M)[^¡\n]+\!" ReplaceBy=" ¡M">
    <ERROR UseREOnlyToFind="True" Find="-( N)[^¡\n]+\!" ReplaceBy=" ¡N">
    <ERROR UseREOnlyToFind="True" Find="-( Ñ)[^¡\n]+\!" ReplaceBy=" ¡Ñ">
    <ERROR UseREOnlyToFind="True" Find="-( O)[^¡\n]+\!" ReplaceBy=" ¡O">
    <ERROR UseREOnlyToFind="True" Find="-( P)[^¡\n]+\!" ReplaceBy=" ¡P">
    <ERROR UseREOnlyToFind="True" Find="-( Q)[^¡\n]+\!" ReplaceBy=" ¡Q">
    <ERROR UseREOnlyToFind="True" Find="-( R)[^¡\n]+\!" ReplaceBy=" ¡R">
    <ERROR UseREOnlyToFind="True" Find="-( S)[^¡\n]+\!" ReplaceBy=" ¡S">
    <ERROR UseREOnlyToFind="True" Find="-( T)[^¡\n]+\!" ReplaceBy=" ¡T">
    <ERROR UseREOnlyToFind="True" Find="-( U)[^¡\n]+\!" ReplaceBy=" ¡U">
    <ERROR UseREOnlyToFind="True" Find="-( V)[^¡\n]+\!" ReplaceBy=" ¡V">
    <ERROR UseREOnlyToFind="True" Find="-( W)[^¡\n]+\!" ReplaceBy=" ¡W">
    <ERROR UseREOnlyToFind="True" Find="-( X)[^¡\n]+\!" ReplaceBy=" ¡X">
    <ERROR UseREOnlyToFind="True" Find="-( Y)[^¡\n]+\!" ReplaceBy=" ¡Y">
    <ERROR UseREOnlyToFind="True" Find="-( Z)[^¡\n]+\!" ReplaceBy=" ¡Z">
    <ERROR UseREOnlyToFind="True" Find="-( Á)[^¡\n]+\!" ReplaceBy=" ¡Á">
    <ERROR UseREOnlyToFind="True" Find="-( É)[^¡\n]+\!" ReplaceBy=" ¡É">
    <ERROR UseREOnlyToFind="True" Find="-( Í)[^¡\n]+\!" ReplaceBy=" ¡Í">
    <ERROR UseREOnlyToFind="True" Find="-( Ó)[^¡\n]+\!" ReplaceBy=" ¡Ó">
    <ERROR UseREOnlyToFind="True" Find="-( Ú)[^¡\n]+\!" ReplaceBy=" ¡Ú">
    <!-- Pone los signos al inicio de la primera línea -->
    <ERROR UseREOnlyToFind="True" Find="^(A)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿A">
    <ERROR UseREOnlyToFind="True" Find="^(B)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿B">
    <ERROR UseREOnlyToFind="True" Find="^(C)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿C">
    <ERROR UseREOnlyToFind="True" Find="^(D)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿D">
    <ERROR UseREOnlyToFind="True" Find="^(E)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿E">
    <ERROR UseREOnlyToFind="True" Find="^(F)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿F">
    <ERROR UseREOnlyToFind="True" Find="^(G)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿G">
    <ERROR UseREOnlyToFind="True" Find="^(H)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿H">
    <ERROR UseREOnlyToFind="True" Find="^(I)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿I">
    <ERROR UseREOnlyToFind="True" Find="^(J)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿J">
    <ERROR UseREOnlyToFind="True" Find="^(K)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿K">
    <ERROR UseREOnlyToFind="True" Find="^(L)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿L">
    <ERROR UseREOnlyToFind="True" Find="^(M)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿M">
    <ERROR UseREOnlyToFind="True" Find="^(N)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿N">
    <ERROR UseREOnlyToFind="True" Find="^(Ñ)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿Ñ">
    <ERROR UseREOnlyToFind="True" Find="^(O)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿O">
    <ERROR UseREOnlyToFind="True" Find="^(P)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿P">
    <ERROR UseREOnlyToFind="True" Find="^(Q)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿Q">
    <ERROR UseREOnlyToFind="True" Find="^(R)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿R">
    <ERROR UseREOnlyToFind="True" Find="^(S)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿S">
    <ERROR UseREOnlyToFind="True" Find="^(T)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿T">
    <ERROR UseREOnlyToFind="True" Find="^(U)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿U">
    <ERROR UseREOnlyToFind="True" Find="^(V)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿V">
    <ERROR UseREOnlyToFind="True" Find="^(W)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿W">
    <ERROR UseREOnlyToFind="True" Find="^(X)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿X">
    <ERROR UseREOnlyToFind="True" Find="^(Y)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿Y">
    <ERROR UseREOnlyToFind="True" Find="^(Z)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿Z">
    <ERROR UseREOnlyToFind="True" Find="^(Á)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿Á">
    <ERROR UseREOnlyToFind="True" Find="^(É)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿É">
    <ERROR UseREOnlyToFind="True" Find="^(Í)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿Í">
    <ERROR UseREOnlyToFind="True" Find="^(Ó)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿Ó">
    <ERROR UseREOnlyToFind="True" Find="^(Ú)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿Ú">
    <ERROR UseREOnlyToFind="True" Find="^(A)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡A">
    <ERROR UseREOnlyToFind="True" Find="^(B)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡B">
    <ERROR UseREOnlyToFind="True" Find="^(C)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡C">
    <ERROR UseREOnlyToFind="True" Find="^(D)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡D">
    <ERROR UseREOnlyToFind="True" Find="^(E)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡E">
    <ERROR UseREOnlyToFind="True" Find="^(F)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡F">
    <ERROR UseREOnlyToFind="True" Find="^(G)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡G">
    <ERROR UseREOnlyToFind="True" Find="^(H)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡H">
    <ERROR UseREOnlyToFind="True" Find="^(I)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡I">
    <ERROR UseREOnlyToFind="True" Find="^(J)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡J">
    <ERROR UseREOnlyToFind="True" Find="^(K)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡K">
    <ERROR UseREOnlyToFind="True" Find="^(L)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡L">
    <ERROR UseREOnlyToFind="True" Find="^(M)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡M">
    <ERROR UseREOnlyToFind="True" Find="^(N)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡N">
    <ERROR UseREOnlyToFind="True" Find="^(Ñ)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡Ñ">
    <ERROR UseREOnlyToFind="True" Find="^(O)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡O">
    <ERROR UseREOnlyToFind="True" Find="^(P)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡P">
    <ERROR UseREOnlyToFind="True" Find="^(Q)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡Q">
    <ERROR UseREOnlyToFind="True" Find="^(R)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡R">
    <ERROR UseREOnlyToFind="True" Find="^(S)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡S">
    <ERROR UseREOnlyToFind="True" Find="^(T)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡T">
    <ERROR UseREOnlyToFind="True" Find="^(U)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡U">
    <ERROR UseREOnlyToFind="True" Find="^(V)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡V">
    <ERROR UseREOnlyToFind="True" Find="^(W)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡W">
    <ERROR UseREOnlyToFind="True" Find="^(X)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡X">
    <ERROR UseREOnlyToFind="True" Find="^(Y)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡Y">
    <ERROR UseREOnlyToFind="True" Find="^(Z)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡Z">
    <ERROR UseREOnlyToFind="True" Find="^(Á)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡Á">
    <ERROR UseREOnlyToFind="True" Find="^(É)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡É">
    <ERROR UseREOnlyToFind="True" Find="^(Í)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡Í">
    <ERROR UseREOnlyToFind="True" Find="^(Ó)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡Ó">
    <ERROR UseREOnlyToFind="True" Find="^(Ú)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡Ú">
    <!-- Detecta cada cierre y pone un signo de apertura después de este y antes del próximo cierre -->
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(A)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿A">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(B)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿B">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(C)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿C">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(D)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿D">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(E)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿E">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(F)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿F">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(G)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿G">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(H)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿H">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(I)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿I">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(J)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿J">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(K)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿K">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(L)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿L">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(M)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿M">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(N)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿N">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(Ñ)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿Ñ">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(O)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿O">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(P)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿P">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(Q)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿Q">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(R)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿R">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(S)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿S">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(T)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿T">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(U)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿U">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(V)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿V">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(W)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿W">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(X)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿X">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(Y)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿Y">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(Z)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿Z">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(Á)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿Á">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(É)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿É">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(Í)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿Í">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(Ó)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿Ó">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(Ú)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿Ú">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(A)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡A">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(B)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡B">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(C)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡C">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(D)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡D">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(E)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡E">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(F)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡F">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(G)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡G">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(H)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡H">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(I)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡I">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(J)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡J">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(K)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡K">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(L)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡L">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(M)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡M">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(N)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡N">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(Ñ)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡Ñ">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(O)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡O">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(P)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡P">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(Q)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡Q">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(R)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡R">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(S)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡S">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(T)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡T">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(U)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡U">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(V)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡V">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(W)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡W">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(X)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡X">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(Y)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡Y">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(Z)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡Z">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(Á)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡Á">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(É)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡É">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(Í)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡Í">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(Ó)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡Ó">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(Ú)[\wá-úñü,\x22«»\s]+\!" ReplaceBy="¡Ú">


    Por favor, reporten los casos en los que no pone los signos.


    PD: Estoy un poco mareado con tanta expresión, si ven algún problema o creen que pueden mejorar la expresión estaría encantado de saber la solución.
    Última edición por paconaranjo; 07-06-2014 a las 05:57:20

  4. #64
    Moderador Avatar de cartilugio
    Fecha de ingreso
    15-03-2011
    Ubicación
    Montevideo
    Edad
    48
    Mensajes
    3,635
    Agradecimientos: 2468

    Predeterminado

    Garacias paco, justo ahora estamos en la temporada baja de sub, por lo que hay poco trabajo.

    Pero me comprometo a buscar algún sub de los que hice la corrección que eran terribles para pasar el OCR.
    Primero me haré una lista de lo que debería mejorar (por items, ya que te pedimos tantas cosas!!!!! que ni me acuerdo) para controlar si lo hace bien o hay algún error.

    De nada sirve tanto trabajo de tu parte, si no lo probamos y encontramos los errores que como es lógico pueden haber, para tratar de arreglar lo anterior y poder seguir agregando nuevas soluciones.

    Saludos y un abrazo!!!!

  5. #65
    Moderador Avatar de cartilugio
    Fecha de ingreso
    15-03-2011
    Ubicación
    Montevideo
    Edad
    48
    Mensajes
    3,635
    Agradecimientos: 2468

    Predeterminado

    Otra pregunta Paco?
    De donde puedo bajar el SE portable (la versión más estable)?
    y necesito el VCL también no?

    Gracias amigo!!

  6. #66
    † Subtitulador Avatar de diodoro
    Fecha de ingreso
    20-11-2011
    Ubicación
    Merlo
    Edad
    76
    Mensajes
    4,507
    Agradecimientos: 1287


    Seguir a diodoro en Twitter

    Predeterminado

    Hola amigo podes descargarlo de esta dirección en la pestaña realice. También dice lo que necesitas tener. No te olvides de descargar ffdshow audio recorder y ffdshow video decorder. La página esta en inglés no vas a tener problemas. (Ðiodoro metiendo la cuchara)

    https://github.com/SubtitleEdit/subtitleedit
    Última edición por diodoro; 06-06-2014 a las 14:52:10
    Todo tendrá su precio porque nada vale. Oscar Wilde.
    __________________________________________________ _______________________
    Subtitulos que necesitan corrección
    http://www.subadictos.net/foros/show...ulos+necesitan

  7. #67
    Amigos de SubAdictos Avatar de paconaranjo
    Fecha de ingreso
    08-04-2011
    Mensajes
    518
    Agradecimientos: 365

    Predeterminado

    Hola:

    Quería implementar una expresión como esta en el Subtitle Workshop pero por algún problema del manejo de las regex no he podido, si alguien quiere echarle un vistazo y ver si le surgen algunas ideas, adelante.

    http://regex101.com/r/vQ0kR9



    Cartilugio, la última versión que compila Nikse para pruebas con las últimas novedades la encuentras aquí o como el buen amigo diodoro en la pestaña releases. Baja la versión que más te convenga, para una necesitas tener instalado .NET 2-3.5 y la más reciente .NET 4-4.5 además de los códecs LAV Filter y el VLC Player (Opcional).

    LAV Filters
    https://github.com/Nevcairiel/LAVFilters/releases

    Diccionarios y traducción que uso hasta el día de hoy (Incluye diccionario de México modificado para que detecte más palabras extranjeras y otras cosas que la versión oficial no tiene con respecto a un español neutro). Les recomiendo que usen el idioma español México que es el que he estado actualizando y mejorando (Incluye novedades para la versión 3.3.16).
    https://mega.co.nz/#F!IM8VQAaa!Wj2VoX68ABu4zcfQEZxfng

    VLC Player (Necesario para crear la forma de onda del audio).
    http://www.videolan.org/vlc/

    Cualquier otra cosa aquí estamos.
    Última edición por paconaranjo; 06-06-2014 a las 16:16:53

  8. #68
    Amigos de SubAdictos Avatar de paconaranjo
    Fecha de ingreso
    08-04-2011
    Mensajes
    518
    Agradecimientos: 365

    Predeterminado

    Por cierto uní dos códigos en uno para ahorrar espacio en el OCR.

    Se eliminan todas las expresiones como las siguientes:

    Spoiler:
    SPOILER:
    <ERROR UseREOnlyToFind="True" Find="-( A)[^¿\n]+\?" ReplaceBy=" ¿A">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?]\s(A)[\wá-úñü,\x22«»\s]+\?" ReplaceBy="¿A">


    Nueva expresión:

    Spoiler:
    SPOILER:
    <!-- Detecta cada cierre y pone un signo de apertura después de este -->
    <!-- y antes del próximo cierre incluso en los diálogos -->
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(A)[^¿\.]+\?" ReplaceBy="¿A">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(B)[^¿\.]+\?" ReplaceBy="¿B">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(C)[^¿\.]+\?" ReplaceBy="¿C">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(D)[^¿\.]+\?" ReplaceBy="¿D">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(E)[^¿\.]+\?" ReplaceBy="¿E">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(F)[^¿\.]+\?" ReplaceBy="¿F">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(G)[^¿\.]+\?" ReplaceBy="¿G">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(H)[^¿\.]+\?" ReplaceBy="¿H">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(I)[^¿\.]+\?" ReplaceBy="¿I">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(J)[^¿\.]+\?" ReplaceBy="¿J">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(K)[^¿\.]+\?" ReplaceBy="¿K">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(L)[^¿\.]+\?" ReplaceBy="¿L">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(M)[^¿\.]+\?" ReplaceBy="¿M">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(N)[^¿\.]+\?" ReplaceBy="¿N">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Ñ)[^¿\.]+\?" ReplaceBy="¿Ñ">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(O)[^¿\.]+\?" ReplaceBy="¿O">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(P)[^¿\.]+\?" ReplaceBy="¿P">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Q)[^¿\.]+\?" ReplaceBy="¿Q">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(R)[^¿\.]+\?" ReplaceBy="¿R">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(S)[^¿\.]+\?" ReplaceBy="¿S">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(T)[^¿\.]+\?" ReplaceBy="¿T">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(U)[^¿\.]+\?" ReplaceBy="¿U">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(V)[^¿\.]+\?" ReplaceBy="¿V">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(W)[^¿\.]+\?" ReplaceBy="¿W">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(X)[^¿\.]+\?" ReplaceBy="¿X">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Y)[^¿\.]+\?" ReplaceBy="¿Y">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Z)[^¿\.]+\?" ReplaceBy="¿Z">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Á)[^¿\.]+\?" ReplaceBy="¿Á">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(É)[^¿\.]+\?" ReplaceBy="¿É">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Í)[^¿\.]+\?" ReplaceBy="¿Í">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Ó)[^¿\.]+\?" ReplaceBy="¿Ó">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Ú)[^¿\.]+\?" ReplaceBy="¿Ú">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(A)[^¡\.]+\!" ReplaceBy="¡A">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(B)[^¡\.]+\!" ReplaceBy="¡B">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(C)[^¡\.]+\!" ReplaceBy="¡C">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(D)[^¡\.]+\!" ReplaceBy="¡D">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(E)[^¡\.]+\!" ReplaceBy="¡E">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(F)[^¡\.]+\!" ReplaceBy="¡F">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(G)[^¡\.]+\!" ReplaceBy="¡G">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(H)[^¡\.]+\!" ReplaceBy="¡H">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(I)[^¡\.]+\!" ReplaceBy="¡I">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(J)[^¡\.]+\!" ReplaceBy="¡J">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(K)[^¡\.]+\!" ReplaceBy="¡K">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(L)[^¡\.]+\!" ReplaceBy="¡L">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(M)[^¡\.]+\!" ReplaceBy="¡M">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(N)[^¡\.]+\!" ReplaceBy="¡N">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Ñ)[^¡\.]+\!" ReplaceBy="¡Ñ">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(O)[^¡\.]+\!" ReplaceBy="¡O">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(P)[^¡\.]+\!" ReplaceBy="¡P">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Q)[^¡\.]+\!" ReplaceBy="¡Q">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(R)[^¡\.]+\!" ReplaceBy="¡R">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(S)[^¡\.]+\!" ReplaceBy="¡S">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(T)[^¡\.]+\!" ReplaceBy="¡T">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(U)[^¡\.]+\!" ReplaceBy="¡U">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(V)[^¡\.]+\!" ReplaceBy="¡V">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(W)[^¡\.]+\!" ReplaceBy="¡W">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(X)[^¡\.]+\!" ReplaceBy="¡X">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Y)[^¡\.]+\!" ReplaceBy="¡Y">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Z)[^¡\.]+\!" ReplaceBy="¡Z">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Á)[^¡\.]+\!" ReplaceBy="¡Á">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(É)[^¡\.]+\!" ReplaceBy="¡É">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Í)[^¡\.]+\!" ReplaceBy="¡Í">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Ó)[^¡\.]+\!" ReplaceBy="¡Ó">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Ú)[^¡\.]+\!" ReplaceBy="¡Ú">


    Si hay más cambios les aviso, así pueden ir probando a ver cual les gusta más. Por ejemplo, si agregan (?m) a las expresiones que empiezan con ^(A)[\wá-úñü,\x22«»\s]+\? pone los signos de apertura en la segunda línea si esta empieza con mayúscula, pero no detecta si la pregunta termina ahí, ya que no reconoce el salto de línea como tal (estoy averiguando cómo funciona), y si es que antes del salto hay un punto o un signo de cierre.

    PD: Posible solución a los signos. Agreguen esta expresión:

    <ERROR UseREOnlyToFind="True" Find="(?x)[A-ZÁ-ÚÑ][^¿\?\. ]+(¿)" ReplaceBy="">
    Última edición por paconaranjo; 06-06-2014 a las 17:50:10

  9. #69
    Subtitulador Avatar de Wendy
    Fecha de ingreso
    29-05-2010
    Mensajes
    18,611
    Agradecimientos: 12662

    Predeterminado

    ¿Es mucho pedir una lista de las cosas que soluciona el último OCR para chequear como funciona? Pensaba en bajar un subtítulo que recuerdo tenía varios errores y pasarle este OCR.

  10. #70
    Moderador Avatar de cartilugio
    Fecha de ingreso
    15-03-2011
    Ubicación
    Montevideo
    Edad
    48
    Mensajes
    3,635
    Agradecimientos: 2468

    Predeterminado

    Gracias Diodoro y Paco!!
    Saludos!

  11. #71
    Subtitulador Avatar de Wendy
    Fecha de ingreso
    29-05-2010
    Mensajes
    18,611
    Agradecimientos: 12662

    Predeterminado

    Tengo una frase para el "Super Neutralizador de Paco": "Que te den", podría cambiarse por "Vete al diablo", "Vete al demonio", "Vete al infierno" o si nos ponemos escatológicos "Vete a la mierda".
    ¿Busca "tío" y "tía"?

  12. #72
    † Subtitulador Avatar de diodoro
    Fecha de ingreso
    20-11-2011
    Ubicación
    Merlo
    Edad
    76
    Mensajes
    4,507
    Agradecimientos: 1287


    Seguir a diodoro en Twitter

    Predeterminado

    Cita Iniciado por Wendy Ver mensaje
    Tengo una frase para el "Super Neutralizador de Paco": "Que te den", podría cambiarse por "Vete al diablo", "Vete al demonio", "Vete al infierno" o si nos ponemos escatológicos "Vete a la mierda".
    ¿Busca "tío" y "tía"?
    Sería de mucha ayuda

  13. #73
    Amigos de SubAdictos Avatar de paconaranjo
    Fecha de ingreso
    08-04-2011
    Mensajes
    518
    Agradecimientos: 365

    Predeterminado

    Cita Iniciado por Wendy Ver mensaje
    ¿Es mucho pedir una lista de las cosas que soluciona el último OCR para chequear como funciona? Pensaba en bajar un subtítulo que recuerdo tenía varios errores y pasarle este OCR.
    Claro, creo que lo conveniente es que abra otro tema con ejemplos de todo lo que corrige y así puedan distinguir qué es lo que hace y cómo lo hace.

    Mis correcciones las estoy probando con los subtítulos de Kuzey Güney que estoy corrigiendo. Así me doy cuenta de los errores que se pueden mejorar.

    Saludos.

    Cita Iniciado por Wendy Ver mensaje
    Tengo una frase para el "Super Neutralizador de Paco": "Que te den", podría cambiarse por "Vete al diablo", "Vete al demonio", "Vete al infierno" o si nos ponemos escatológicos "Vete a la mierda".
    ¿Busca "tío" y "tía"?
    Me parece muy bien, sobre todo tío(a), por cierto, que ponen ustedes cuando lo cambian.

    <ERROR Find="\bQue te den\b" ReplaceBy="Vete al diablo">
    <ERROR Find="\bVete al demonio\b" ReplaceBy="Vete al infierno">
    <ERROR Find="\btí[oa]\b">
    Última edición por paconaranjo; 07-06-2014 a las 02:57:02

  14. #74
    Amigos de SubAdictos Avatar de paconaranjo
    Fecha de ingreso
    08-04-2011
    Mensajes
    518
    Agradecimientos: 365

    Predeterminado

    Poner signos y detectar errores para corregir los signos manualmente (casos muy poco frecuentes). En general funciona muy bien.

    Beta 6 (Hace casi todo el trabajo de poner los signos, solo es necesario supervisar los errores que marque en rojo para corregirlos manualmente)

    Spoiler:
    SPOILER:
    <!-- Signos faltantes -->
    <!-- Detecta cuando una línea empieza con minúsculas y termina con un signo de cierre, -->
    <!-- esto es útil para verificar si el subtítulo anterior contiene el signo de apertura -->
    <ERROR Find="^[a-zà-ùä-üá-úñ\x22«'][^¿\.]+\?">
    <ERROR Find="^[a-zà-ùä-üá-úñ\x22«'][^¡\.]+\!">
    <!-- Detecta si desde el inicio de una mayúscula no hay un cierre e inicie una apertura -->
    <ERROR Find="[A-ZÁ-ÚÑ][^¡¿\!\?\.]+[¡¿]">
    <!-- Detecta si no hay un signo de apertura antes de una mayúscula y de un signo de cierre -->
    <!-- incluido cuando acaba en tres puntos -->
    <ERROR UseREOnlyToFind="True" Find="[^¿](A)[^¿\.]+\.{3}?\?" ReplaceBy="¿A">
    <ERROR UseREOnlyToFind="True" Find="[^¿](B)[^¿\.]+\.{3}?\?" ReplaceBy="¿B">
    <ERROR UseREOnlyToFind="True" Find="[^¿](C)[^¿\.]+\.{3}?\?" ReplaceBy="¿C">
    <ERROR UseREOnlyToFind="True" Find="[^¿](D)[^¿\.]+\.{3}?\?" ReplaceBy="¿D">
    <ERROR UseREOnlyToFind="True" Find="[^¿](E)[^¿\.]+\.{3}?\?" ReplaceBy="¿E">
    <ERROR UseREOnlyToFind="True" Find="[^¿](F)[^¿\.]+\.{3}?\?" ReplaceBy="¿F">
    <ERROR UseREOnlyToFind="True" Find="[^¿](G)[^¿\.]+\.{3}?\?" ReplaceBy="¿G">
    <ERROR UseREOnlyToFind="True" Find="[^¿](H)[^¿\.]+\.{3}?\?" ReplaceBy="¿H">
    <ERROR UseREOnlyToFind="True" Find="[^¿](I)[^¿\.]+\.{3}?\?" ReplaceBy="¿I">
    <ERROR UseREOnlyToFind="True" Find="[^¿](J)[^¿\.]+\.{3}?\?" ReplaceBy="¿J">
    <ERROR UseREOnlyToFind="True" Find="[^¿](K)[^¿\.]+\.{3}?\?" ReplaceBy="¿K">
    <ERROR UseREOnlyToFind="True" Find="[^¿](L)[^¿\.]+\.{3}?\?" ReplaceBy="¿L">
    <ERROR UseREOnlyToFind="True" Find="[^¿](M)[^¿\.]+\.{3}?\?" ReplaceBy="¿M">
    <ERROR UseREOnlyToFind="True" Find="[^¿](N)[^¿\.]+\.{3}?\?" ReplaceBy="¿N">
    <ERROR UseREOnlyToFind="True" Find="[^¿](Ñ)[^¿\.]+\.{3}?\?" ReplaceBy="¿Ñ">
    <ERROR UseREOnlyToFind="True" Find="[^¿](O)[^¿\.]+\.{3}?\?" ReplaceBy="¿O">
    <ERROR UseREOnlyToFind="True" Find="[^¿](P)[^¿\.]+\.{3}?\?" ReplaceBy="¿P">
    <ERROR UseREOnlyToFind="True" Find="[^¿](Q)[^¿\.]+\.{3}?\?" ReplaceBy="¿Q">
    <ERROR UseREOnlyToFind="True" Find="[^¿](R)[^¿\.]+\.{3}?\?" ReplaceBy="¿R">
    <ERROR UseREOnlyToFind="True" Find="[^¿](S)[^¿\.]+\.{3}?\?" ReplaceBy="¿S">
    <ERROR UseREOnlyToFind="True" Find="[^¿](T)[^¿\.]+\.{3}?\?" ReplaceBy="¿T">
    <ERROR UseREOnlyToFind="True" Find="[^¿](U)[^¿\.]+\.{3}?\?" ReplaceBy="¿U">
    <ERROR UseREOnlyToFind="True" Find="[^¿](V)[^¿\.]+\.{3}?\?" ReplaceBy="¿V">
    <ERROR UseREOnlyToFind="True" Find="[^¿](W)[^¿\.]+\.{3}?\?" ReplaceBy="¿W">
    <ERROR UseREOnlyToFind="True" Find="[^¿](X)[^¿\.]+\.{3}?\?" ReplaceBy="¿X">
    <ERROR UseREOnlyToFind="True" Find="[^¿](Y)[^¿\.]+\.{3}?\?" ReplaceBy="¿Y">
    <ERROR UseREOnlyToFind="True" Find="[^¿](Z)[^¿\.]+\.{3}?\?" ReplaceBy="¿Z">
    <ERROR UseREOnlyToFind="True" Find="[^¿](Á)[^¿\.]+\.{3}?\?" ReplaceBy="¿Á">
    <ERROR UseREOnlyToFind="True" Find="[^¿](É)[^¿\.]+\.{3}?\?" ReplaceBy="¿É">
    <ERROR UseREOnlyToFind="True" Find="[^¿](Í)[^¿\.]+\.{3}?\?" ReplaceBy="¿Í">
    <ERROR UseREOnlyToFind="True" Find="[^¿](Ó)[^¿\.]+\.{3}?\?" ReplaceBy="¿Ó">
    <ERROR UseREOnlyToFind="True" Find="[^¿](Ú)[^¿\.]+\.{3}?\?" ReplaceBy="¿Ú">
    <ERROR UseREOnlyToFind="True" Find="[^¡](A)[^¡\.]+\.{3}?\!" ReplaceBy="¡A">
    <ERROR UseREOnlyToFind="True" Find="[^¡](B)[^¡\.]+\.{3}?\!" ReplaceBy="¡B">
    <ERROR UseREOnlyToFind="True" Find="[^¡](C)[^¡\.]+\.{3}?\!" ReplaceBy="¡C">
    <ERROR UseREOnlyToFind="True" Find="[^¡](D)[^¡\.]+\.{3}?\!" ReplaceBy="¡D">
    <ERROR UseREOnlyToFind="True" Find="[^¡](E)[^¡\.]+\.{3}?\!" ReplaceBy="¡E">
    <ERROR UseREOnlyToFind="True" Find="[^¡](F)[^¡\.]+\.{3}?\!" ReplaceBy="¡F">
    <ERROR UseREOnlyToFind="True" Find="[^¡](G)[^¡\.]+\.{3}?\!" ReplaceBy="¡G">
    <ERROR UseREOnlyToFind="True" Find="[^¡](H)[^¡\.]+\.{3}?\!" ReplaceBy="¡H">
    <ERROR UseREOnlyToFind="True" Find="[^¡](I)[^¡\.]+\.{3}?\!" ReplaceBy="¡I">
    <ERROR UseREOnlyToFind="True" Find="[^¡](J)[^¡\.]+\.{3}?\!" ReplaceBy="¡J">
    <ERROR UseREOnlyToFind="True" Find="[^¡](K)[^¡\.]+\.{3}?\!" ReplaceBy="¡K">
    <ERROR UseREOnlyToFind="True" Find="[^¡](L)[^¡\.]+\.{3}?\!" ReplaceBy="¡L">
    <ERROR UseREOnlyToFind="True" Find="[^¡](M)[^¡\.]+\.{3}?\!" ReplaceBy="¡M">
    <ERROR UseREOnlyToFind="True" Find="[^¡](N)[^¡\.]+\.{3}?\!" ReplaceBy="¡N">
    <ERROR UseREOnlyToFind="True" Find="[^¡](Ñ)[^¡\.]+\.{3}?\!" ReplaceBy="¡Ñ">
    <ERROR UseREOnlyToFind="True" Find="[^¡](O)[^¡\.]+\.{3}?\!" ReplaceBy="¡O">
    <ERROR UseREOnlyToFind="True" Find="[^¡](P)[^¡\.]+\.{3}?\!" ReplaceBy="¡P">
    <ERROR UseREOnlyToFind="True" Find="[^¡](Q)[^¡\.]+\.{3}?\!" ReplaceBy="¡Q">
    <ERROR UseREOnlyToFind="True" Find="[^¡](R)[^¡\.]+\.{3}?\!" ReplaceBy="¡R">
    <ERROR UseREOnlyToFind="True" Find="[^¡](S)[^¡\.]+\.{3}?\!" ReplaceBy="¡S">
    <ERROR UseREOnlyToFind="True" Find="[^¡](T)[^¡\.]+\.{3}?\!" ReplaceBy="¡T">
    <ERROR UseREOnlyToFind="True" Find="[^¡](U)[^¡\.]+\.{3}?\!" ReplaceBy="¡U">
    <ERROR UseREOnlyToFind="True" Find="[^¡](V)[^¡\.]+\.{3}?\!" ReplaceBy="¡V">
    <ERROR UseREOnlyToFind="True" Find="[^¡](W)[^¡\.]+\.{3}?\!" ReplaceBy="¡W">
    <ERROR UseREOnlyToFind="True" Find="[^¡](X)[^¡\.]+\.{3}?\!" ReplaceBy="¡X">
    <ERROR UseREOnlyToFind="True" Find="[^¡](Y)[^¡\.]+\.{3}?\!" ReplaceBy="¡Y">
    <ERROR UseREOnlyToFind="True" Find="[^¡](Z)[^¡\.]+\.{3}?\!" ReplaceBy="¡Z">
    <ERROR UseREOnlyToFind="True" Find="[^¡](Á)[^¡\.]+\.{3}?\!" ReplaceBy="¡Á">
    <ERROR UseREOnlyToFind="True" Find="[^¡](É)[^¡\.]+\.{3}?\!" ReplaceBy="¡É">
    <ERROR UseREOnlyToFind="True" Find="[^¡](Í)[^¡\.]+\.{3}?\!" ReplaceBy="¡Í">
    <ERROR UseREOnlyToFind="True" Find="[^¡](Ó)[^¡\.]+\.{3}?\!" ReplaceBy="¡Ó">
    <ERROR UseREOnlyToFind="True" Find="[^¡](Ú)[^¡\.]+\.{3}?\!" ReplaceBy="¡Ú">
    <!-- Pone los signos al inicio de la primera línea -->
    <ERROR UseREOnlyToFind="True" Find="(?m)^(A)[^¿\.]+\?" ReplaceBy="¿A">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(B)[^¿\.]+\?" ReplaceBy="¿B">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(C)[^¿\.]+\?" ReplaceBy="¿C">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(D)[^¿\.]+\?" ReplaceBy="¿D">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(E)[^¿\.]+\?" ReplaceBy="¿E">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(F)[^¿\.]+\?" ReplaceBy="¿F">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(G)[^¿\.]+\?" ReplaceBy="¿G">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(H)[^¿\.]+\?" ReplaceBy="¿H">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(I)[^¿\.]+\?" ReplaceBy="¿I">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(J)[^¿\.]+\?" ReplaceBy="¿J">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(K)[^¿\.]+\?" ReplaceBy="¿K">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(L)[^¿\.]+\?" ReplaceBy="¿L">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(M)[^¿\.]+\?" ReplaceBy="¿M">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(N)[^¿\.]+\?" ReplaceBy="¿N">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(Ñ)[^¿\.]+\?" ReplaceBy="¿Ñ">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(O)[^¿\.]+\?" ReplaceBy="¿O">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(P)[^¿\.]+\?" ReplaceBy="¿P">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(Q)[^¿\.]+\?" ReplaceBy="¿Q">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(R)[^¿\.]+\?" ReplaceBy="¿R">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(S)[^¿\.]+\?" ReplaceBy="¿S">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(T)[^¿\.]+\?" ReplaceBy="¿T">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(U)[^¿\.]+\?" ReplaceBy="¿U">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(V)[^¿\.]+\?" ReplaceBy="¿V">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(W)[^¿\.]+\?" ReplaceBy="¿W">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(X)[^¿\.]+\?" ReplaceBy="¿X">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(Y)[^¿\.]+\?" ReplaceBy="¿Y">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(Z)[^¿\.]+\?" ReplaceBy="¿Z">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(Á)[^¿\.]+\?" ReplaceBy="¿Á">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(É)[^¿\.]+\?" ReplaceBy="¿É">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(Í)[^¿\.]+\?" ReplaceBy="¿Í">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(Ó)[^¿\.]+\?" ReplaceBy="¿Ó">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(Ú)[^¿\.]+\?" ReplaceBy="¿Ú">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(A)[^¡\.]+\!" ReplaceBy="¡A">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(B)[^¡\.]+\!" ReplaceBy="¡B">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(C)[^¡\.]+\!" ReplaceBy="¡C">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(D)[^¡\.]+\!" ReplaceBy="¡D">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(E)[^¡\.]+\!" ReplaceBy="¡E">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(F)[^¡\.]+\!" ReplaceBy="¡F">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(G)[^¡\.]+\!" ReplaceBy="¡G">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(H)[^¡\.]+\!" ReplaceBy="¡H">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(I)[^¡\.]+\!" ReplaceBy="¡I">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(J)[^¡\.]+\!" ReplaceBy="¡J">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(K)[^¡\.]+\!" ReplaceBy="¡K">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(L)[^¡\.]+\!" ReplaceBy="¡L">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(M)[^¡\.]+\!" ReplaceBy="¡M">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(N)[^¡\.]+\!" ReplaceBy="¡N">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(Ñ)[^¡\.]+\!" ReplaceBy="¡Ñ">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(O)[^¡\.]+\!" ReplaceBy="¡O">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(P)[^¡\.]+\!" ReplaceBy="¡P">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(Q)[^¡\.]+\!" ReplaceBy="¡Q">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(R)[^¡\.]+\!" ReplaceBy="¡R">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(S)[^¡\.]+\!" ReplaceBy="¡S">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(T)[^¡\.]+\!" ReplaceBy="¡T">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(U)[^¡\.]+\!" ReplaceBy="¡U">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(V)[^¡\.]+\!" ReplaceBy="¡V">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(W)[^¡\.]+\!" ReplaceBy="¡W">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(X)[^¡\.]+\!" ReplaceBy="¡X">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(Y)[^¡\.]+\!" ReplaceBy="¡Y">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(Z)[^¡\.]+\!" ReplaceBy="¡Z">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(Á)[^¡\.]+\!" ReplaceBy="¡Á">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(É)[^¡\.]+\!" ReplaceBy="¡É">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(Í)[^¡\.]+\!" ReplaceBy="¡Í">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(Ó)[^¡\.]+\!" ReplaceBy="¡Ó">
    <ERROR UseREOnlyToFind="True" Find="(?m)^(Ú)[^¡\.]+\!" ReplaceBy="¡Ú">
    <!-- Detecta cada cierre y pone un signo de apertura después de este -->
    <!-- y antes del próximo cierre incluso en los diálogos -->
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(A)[^¿\.]+\?" ReplaceBy="¿A">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(B)[^¿\.]+\?" ReplaceBy="¿B">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(C)[^¿\.]+\?" ReplaceBy="¿C">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(D)[^¿\.]+\?" ReplaceBy="¿D">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(E)[^¿\.]+\?" ReplaceBy="¿E">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(F)[^¿\.]+\?" ReplaceBy="¿F">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(G)[^¿\.]+\?" ReplaceBy="¿G">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(H)[^¿\.]+\?" ReplaceBy="¿H">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(I)[^¿\.]+\?" ReplaceBy="¿I">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(J)[^¿\.]+\?" ReplaceBy="¿J">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(K)[^¿\.]+\?" ReplaceBy="¿K">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(L)[^¿\.]+\?" ReplaceBy="¿L">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(M)[^¿\.]+\?" ReplaceBy="¿M">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(N)[^¿\.]+\?" ReplaceBy="¿N">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Ñ)[^¿\.]+\?" ReplaceBy="¿Ñ">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(O)[^¿\.]+\?" ReplaceBy="¿O">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(P)[^¿\.]+\?" ReplaceBy="¿P">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Q)[^¿\.]+\?" ReplaceBy="¿Q">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(R)[^¿\.]+\?" ReplaceBy="¿R">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(S)[^¿\.]+\?" ReplaceBy="¿S">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(T)[^¿\.]+\?" ReplaceBy="¿T">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(U)[^¿\.]+\?" ReplaceBy="¿U">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(V)[^¿\.]+\?" ReplaceBy="¿V">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(W)[^¿\.]+\?" ReplaceBy="¿W">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(X)[^¿\.]+\?" ReplaceBy="¿X">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Y)[^¿\.]+\?" ReplaceBy="¿Y">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Z)[^¿\.]+\?" ReplaceBy="¿Z">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Á)[^¿\.]+\?" ReplaceBy="¿Á">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(É)[^¿\.]+\?" ReplaceBy="¿É">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Í)[^¿\.]+\?" ReplaceBy="¿Í">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Ó)[^¿\.]+\?" ReplaceBy="¿Ó">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Ú)[^¿\.]+\?" ReplaceBy="¿Ú">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(A)[^¡\.]+\!" ReplaceBy="¡A">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(B)[^¡\.]+\!" ReplaceBy="¡B">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(C)[^¡\.]+\!" ReplaceBy="¡C">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(D)[^¡\.]+\!" ReplaceBy="¡D">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(E)[^¡\.]+\!" ReplaceBy="¡E">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(F)[^¡\.]+\!" ReplaceBy="¡F">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(G)[^¡\.]+\!" ReplaceBy="¡G">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(H)[^¡\.]+\!" ReplaceBy="¡H">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(I)[^¡\.]+\!" ReplaceBy="¡I">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(J)[^¡\.]+\!" ReplaceBy="¡J">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(K)[^¡\.]+\!" ReplaceBy="¡K">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(L)[^¡\.]+\!" ReplaceBy="¡L">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(M)[^¡\.]+\!" ReplaceBy="¡M">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(N)[^¡\.]+\!" ReplaceBy="¡N">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Ñ)[^¡\.]+\!" ReplaceBy="¡Ñ">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(O)[^¡\.]+\!" ReplaceBy="¡O">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(P)[^¡\.]+\!" ReplaceBy="¡P">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Q)[^¡\.]+\!" ReplaceBy="¡Q">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(R)[^¡\.]+\!" ReplaceBy="¡R">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(S)[^¡\.]+\!" ReplaceBy="¡S">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(T)[^¡\.]+\!" ReplaceBy="¡T">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(U)[^¡\.]+\!" ReplaceBy="¡U">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(V)[^¡\.]+\!" ReplaceBy="¡V">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(W)[^¡\.]+\!" ReplaceBy="¡W">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(X)[^¡\.]+\!" ReplaceBy="¡X">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Y)[^¡\.]+\!" ReplaceBy="¡Y">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Z)[^¡\.]+\!" ReplaceBy="¡Z">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Á)[^¡\.]+\!" ReplaceBy="¡Á">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(É)[^¡\.]+\!" ReplaceBy="¡É">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Í)[^¡\.]+\!" ReplaceBy="¡Í">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Ó)[^¡\.]+\!" ReplaceBy="¡Ó">
    <ERROR UseREOnlyToFind="True" Find="[\.\!\?\-]\s(Ú)[^¡\.]+\!" ReplaceBy="¡Ú">


    Faltarían casos como:

    Pide lo que quieras, ¿sí?

    O ustedes que opinan...
    Última edición por paconaranjo; 10-06-2014 a las 03:03:53

  15. #75
    Subtitulador Avatar de tiodrock
    Fecha de ingreso
    15-04-2010
    Ubicación
    Hurlingham
    Mensajes
    18,036
    Agradecimientos: 24759


    Seguir a tiodrock en Twitter

    Predeterminado

    Cita Iniciado por paconaranjo Ver mensaje
    Me parece muy bien, sobre todo tío(a), por cierto, que ponen ustedes cuando lo cambian.
    Lo más común es reemplazarlo por "tipo(a)".

    Saludos

  16. #76
    Subtitulador Avatar de kingcreole
    Fecha de ingreso
    09-09-2010
    Ubicación
    Argentina
    Mensajes
    17,323
    Agradecimientos: 1356

    Predeterminado

    Cita Iniciado por mcozeti Ver mensaje
    Gracias Tio. Toda la duda arrancó acá, cuando me anoté para corregir esta serie

    http://www.subadictos.net/foros/show...ght=talismanen

    ahí dice:

    "- Recuerden que la línea final del subtítulo termina con: algún signo de interrogación o exclamación,un punto final o puntos suspensivos."

    Saludos.
    Yo particularmente le pongo los "..." a todos, no termino con ",", me gusta más... Lo que no puede ir, es la ",", seguida de los ...

    El OCR de Asia Team, cambia la "," por los "..."

    El OCR de subadictos lo deja como está...

    Abrazo!
    "Bienaventurados los que dan sin recordar, y los que reciben sin olvidar". Madre Teresa de Calcuta

    There are two kinds of music. Rock and Roll.

  17. #77
    Subtitulador Avatar de mcozeti
    Fecha de ingreso
    16-06-2011
    Ubicación
    Hurlingham, Buenos Aires
    Mensajes
    5,905
    Agradecimientos: 13613

    Predeterminado

    Cita Iniciado por kingcreole Ver mensaje
    Yo particularmente le pongo los "..." a todos, no termino con ",", me gusta más... Lo que no puede ir, es la ",", seguida de los ...

    El OCR de Asia Team, cambia la "," por los "..."

    El OCR de subadictos lo deja como está...

    Abrazo!
    Buenísimo King, gracias.
    Saludos.

  18. #78
    Subtitulador Avatar de kingcreole
    Fecha de ingreso
    09-09-2010
    Ubicación
    Argentina
    Mensajes
    17,323
    Agradecimientos: 1356

    Predeterminado

    Cita Iniciado por paconaranjo Ver mensaje
    Claro, creo que lo conveniente es que abra otro tema con ejemplos de todo lo que corrige y así puedan distinguir qué es lo que hace y cómo lo hace.

    Mis correcciones las estoy probando con los subtítulos de Kuzey Güney que estoy corrigiendo. Así me doy cuenta de los errores que se pueden mejorar.

    Saludos.



    Me parece muy bien, sobre todo tío(a), por cierto, que ponen ustedes cuando lo cambian.
    Ojo que que te den debe ir al condicional, porque si necesitas "que te den" una inyección, no va

  19. #79
    Subtitulador Avatar de kingcreole
    Fecha de ingreso
    09-09-2010
    Ubicación
    Argentina
    Mensajes
    17,323
    Agradecimientos: 1356

    Predeterminado

    Cita Iniciado por paconaranjo Ver mensaje
    Aquí les traigo la beta 5, esta tiene muchas mejoras y algunos errores detectados ya reparados.

    Incluye la corrección de signos de admiración e interrogación hasta donde se pudo, debido a los límites de las expresiones regulares manejadas por SW, ya que para las regex casi no hay límites. Esto es hasta que encuentre una solución. Por el momento corrige bastantes casos y lo hace muy bien, hay dos casos que no los corrige, y tiene que hacerse una revisión manual, para la cual hice otra expresión que detecta el posible error para corregirlo manualmente.


    Por favor, reporten los casos en los que no pone los signos.


    PD: Estoy un poco mareado con tanta expresión, si ven algún problema o creen que pueden mejorar la expresión estaría encantado de saber la solución.
    Esta versión al final está probada?

  20. #80
    Subtitulador Avatar de kingcreole
    Fecha de ingreso
    09-09-2010
    Ubicación
    Argentina
    Mensajes
    17,323
    Agradecimientos: 1356

    Predeterminado

    Hola, acá subo los 3 OCR de reducción y latinización, que voy haciendo, con muchas cosas de las de paco (no todas) y algunas otras que fui juntando:

    1. reduce.ocr: Ese se puede pasar completo sin detenerse si luego vas a ver el capítulo completo. El 95% de las veces va a funcionar bien.

    2. reduce@.ocr: Hay que hacerlo paso a paso pero tiene un reemplazo sugerido, que no funciona en todos los casos.

    3. reduce@@.ocr: Hay que hacerlo paso a paso y NO tiene un reemplazo sugerido. Sólo encuentra palabras "dudosas" para que el corrector decida.
    Archivos adjuntados Archivos adjuntados
    Última edición por kingcreole; 07-06-2014 a las 16:00:40

  21. #81
    Subtitulador Avatar de kingcreole
    Fecha de ingreso
    09-09-2010
    Ubicación
    Argentina
    Mensajes
    17,323
    Agradecimientos: 1356

    Predeterminado

    Agregué como adjuntos los OCR de reducción, español neutro y los de subadictos.

    La diferencia entre subadictos y asia-team, es que si una línea finaliza con ",", subadictos la deja y Asia Team la cambia por "..."

    Les agregué la línea de jape para "--" y otra más que no me acuerdo

  22. #82
    Moderador Avatar de cartilugio
    Fecha de ingreso
    15-03-2011
    Ubicación
    Montevideo
    Edad
    48
    Mensajes
    3,635
    Agradecimientos: 2468

    Predeterminado

    Gracias Amigo!!!!

    Saludos!

  23. #83
    Amigos de SubAdictos Avatar de Dr. Smith
    Fecha de ingreso
    08-09-2010
    Mensajes
    13,417
    Agradecimientos: 4909

    Predeterminado

    Gracias mi estimado, lo probaré...
    "Solamente existen dos cosas infinitas, el universo, y la estupidez humana.
    Y yo no estoy seguro de la primera."

  24. #84
    Amigos de SubAdictos Avatar de paconaranjo
    Fecha de ingreso
    08-04-2011
    Mensajes
    518
    Agradecimientos: 365

    Predeterminado

    Cita Iniciado por kingcreole Ver mensaje
    Esta versión al final está probada?
    Te recomiendo la beta 6 del tema número 74.

    Ve probando con F11 cada corrección y me das tu opinión. Esa versión tiene bastante código revisado y reparado, además incluye muchos cambios para buscar y corregir manualmente ciertos errores.

    Saludos.

    PD: La ventaja de usar el OCR en SE es que puedes ver los cambios y aceptarlos o modificar ahí mismo.
    Última edición por paconaranjo; 08-06-2014 a las 02:37:59

  25. #85
    Amigos de SubAdictos Avatar de paconaranjo
    Fecha de ingreso
    08-04-2011
    Mensajes
    518
    Agradecimientos: 365

    Predeterminado

    Corrección para las terminaciones «osla» y «oslo».

    <!-- Terminaciones en «oosla», «ooslo», «rosla» y «roslo». -->
    <ERROR Find="(?i)[ro]osl[ao]\b">

    Esto es para que no detecte palabras con terminación noslo, bolso...
    bolso, desembolso, embolso, molso, reembolso, rembolso
    Última edición por paconaranjo; 08-06-2014 a las 19:16:32

  26. #86
    Subtitulador Avatar de Wendy
    Fecha de ingreso
    29-05-2010
    Mensajes
    18,611
    Agradecimientos: 12662

    Predeterminado

    Cita Iniciado por paconaranjo Ver mensaje

    Me parece muy bien, sobre todo tío(a), por cierto, que ponen ustedes cuando lo cambian.
    Cita Iniciado por tiodrock Ver mensaje
    Lo más común es reemplazarlo por "tipo(a)".

    Saludos
    O nada si la oración es, por ejemplo: "Eso es feo, tío". Me parece que no agrega nada.
    Si es "El tío se rompió una pierna", hago lo mismo que TioDRock, o lo reemplazo por "sujeto" (sobre todo si habla un policía) u "hombre" si queda bien y tengo lugar. Acá me pongo creativa.

  27. #87
    Subtitulador Avatar de Wendy
    Fecha de ingreso
    29-05-2010
    Mensajes
    18,611
    Agradecimientos: 12662

    Predeterminado

    Ya siento que nos estamos abusando de Paco, pero encontré algunas otras cosas, eso sí, antes de la última versión del OCR, así que me disculpo si ya las incluiste.

    Cojones (a veces queda pintoresco, pero tal vez podría ir para dejar a criterio del corrector, ¿qué piensan?)
    Vuestro/a
    Le (por el leísmo, lo encuentro mucho)
    (Estar) de coña por "Estás bromeando", "Es un chiste" o "Bromeas", para acortar
    A dónde (ponerlo todo junto)
    Oye (para que lo buscque solamente, para sacarlo si hace falta, es como el "bueno")
    Ello (se reserva al habla culta, así que si no hacemos un sub histórico se puede reemplazar por "eso")
    ¿eh?
    ¿El qué cambiar por ¿Qué
    Oh ¡Oh, (sin signos de admiración o con uno solo, también para Ah, eh, sh, etc)

  28. #88
    Amigos de SubAdictos Avatar de paconaranjo
    Fecha de ingreso
    08-04-2011
    Mensajes
    518
    Agradecimientos: 365

    Predeterminado

    Cita Iniciado por Wendy Ver mensaje
    O nada si la oración es, por ejemplo: "Eso es feo, tío". Me parece que no agrega nada.
    Si es "El tío se rompió una pierna", hago lo mismo que TioDRock, o lo reemplazo por "sujeto" (sobre todo si habla un policía) u "hombre" si queda bien y tengo lugar. Acá me pongo creativa.
    Gracias, yo a veces me ponía creativo, por lo general dejaba hombre, únicamente lo quitaba cuando los CPS eran demasiados, pero de ahora en adelante, voy a quitarlo si no aporta nada al diálogo.

    Cita Iniciado por Wendy Ver mensaje
    Ya siento que nos estamos abusando de Paco, pero encontré algunas otras cosas, eso sí, antes de la última versión del OCR, así que me disculpo si ya las incluiste.

    Cojones (a veces queda pintoresco, pero tal vez podría ir para dejar a criterio del corrector, ¿qué piensan?)
    Vuestro/a
    Le (por el leísmo, lo encuentro mucho)
    (Estar) de coña por "Estás bromeando", "Es un chiste" o "Bromeas", para acortar
    A dónde (ponerlo todo junto)
    Oye (para que lo buscque solamente, para sacarlo si hace falta, es como el "bueno")
    Ello (se reserva al habla culta, así que si no hacemos un sub histórico se puede reemplazar por "eso")
    ¿eh?
    ¿El qué cambiar por ¿Qué
    Oh ¡Oh, (sin signos de admiración o con uno solo, también para Ah, eh, sh, etc)
    Cojones yo por lo general lo cambio por carajos, etc....


    Muchas palabras no las agregué porque automáticamente me las detecta el corrector ortográfico del SE, lo modifiqué un poco para que me detecte todos los extrangerismos como este:


    Para que detecte la palabra coña, así tu la corriges como mejor quede.


    A dónde por adónde, varía según el contexto:
    http://blog.lengua-e.com/2009/adonde...donde-a-donde/
    Para detectarlo puedes usar esto:


    Para oye es muy fácil:


    Para ello:


    Las otras cosas necesito que me las expliques un poco mejor.


    Falta revisar todas las correcciones de la beta. Como kingcreole dijo antes, Que te den. podría quedar solo si empieza con mayúscula y termina con punto, y se me ocurre que podría quedar también si termina con coma, que te den,.

    Para lo demás se pueden hacer muchas cosas, ojalá actualicen el SW a la versión 6.0b para que puedas ver los cambios y así elegir cual sí y cual no, como en el SE.

    PD: Esta página será de su agrado si quieren entender un poco mejor cómo funcionan las expresiones regulares. http://www.regexper.com
    Última edición por paconaranjo; 10-06-2014 a las 04:55:51

  29. #89
    Amigos de SubAdictos Avatar de paconaranjo
    Fecha de ingreso
    08-04-2011
    Mensajes
    518
    Agradecimientos: 365

    Predeterminado

    Ya encontré el error en el SW que me impedía hacer algunas sustituciones. Lo explico de forma sencilla para que se hagan una idea del problema y darle solución.

    Al buscar un carácter, este, se sustituye doble si la coincidencia está en otra parte de la expresión. Por ejemplo, si buscamos una letra en mayúscula y queremos cambiarla por una en minúscula, podríamos tener un problema al detectarla, para corregir este error es necesario usar un carácter como almohadilla e introducirlo en la sustitución, de esta forma tendremos menos margen de error.

    Ejemplos muy simples para entenderlo mejor:

    Buscar ( ¿) en vez de (¿)
    Buscar (? ) en vez de (?)

    Si se dan cuenta, hay un espacio, este espacio nos ayuda a que la coincidencia evite el error generado por la forma en que SW maneja las expresiones regulares.

    Sabiendo esto, es posible mejorar varias de las expresiones para poner signos y así evitar tantos rodeos para la versión final.

    Por ese simple espacio, evité que me introdujera el signo 《¿》 dos o más veces seguidas, incluso en palabras en minúsculas.

    El error está comprobado con la sustitución de comillas españolas cuando se cita algo más entre las comillas.

    Estará listo en la próxima beta, pero pueden sacarlo del tema que publiqué para Wendy donde explico con ejemplos las expresiones, todas esas están siendo probadas al momento de su publicación, y así es como van corrigiendo o marcando errores, gracias a eso, me di cuenta del mal manejo de las expresiones por parte del SW.

    Saludos y espero eso les ayude a los que quieran seguir colaborando con algunas mejoras para la corrección.

    PD: La beta 6 tiene muchos errores, por ahora la beta 7 está casi toda probada y corregida. Descárguenla desde aquí. ¡Notarán la diferencia!
    Última edición por paconaranjo; 11-06-2014 a las 06:47:42

  30. #90
    Amigos de SubAdictos Avatar de paconaranjo
    Fecha de ingreso
    08-04-2011
    Mensajes
    518
    Agradecimientos: 365

    Predeterminado

    Este es el código fuente de Subtitle Edit para detectar y poner signos de interrogación y exclamación.

    Necesitaríamos enviarle este código a los creadores de SW para que lo incluyan como una corrección básica, o podríamos pasarlo a Pascal para poder usarlo como un script dentro del programa.

    Si conocen a alguien que sepa Pascal y .NET para hacer la transcripción de código, estaría genial. Yo mientras voy a seguir intentando que las expresiones regulares funcionen para este fin.

     /// <summary>
            /// Will try to fix issues with Spanish special letters ¿? and ¡!.
            /// Sentences ending with "?" must start with "¿".
            /// Sentences ending with "!" must start with "¡".
            /// </summary>
            public void FixSpanishInvertedQuestionAndExclamationMarks()
            {
                string fixAction = _language.FixSpanishInvertedQuestionAndExclamationMarks;
                int fixCount = 0;
                for (int i = 0; i < _subtitle.Paragraphs.Count; i++)
                {
                    Paragraph p = _subtitle.Paragraphs[i];
                    Paragraph last = _subtitle.GetParagraphOrDefault(i - 1);
    
                    bool wasLastLineClosed = last == null || last.Text.EndsWith("?") || last.Text.EndsWith("!") || last.Text.EndsWith(".") ||
                                             last.Text.EndsWith(":") || last.Text.EndsWith(")") || last.Text.EndsWith("]");
                    string trimmedStart = p.Text.TrimStart(("- ").ToCharArray());
                    if (last != null && last.Text.EndsWith("...") && trimmedStart.Length > 0 && trimmedStart[0].ToString() == trimmedStart[0].ToString().ToLower())
                        wasLastLineClosed = false;
                    if (!wasLastLineClosed && last != null && last.Text == last.Text.ToUpper())
                        wasLastLineClosed = true;
    
                    string oldText = p.Text;
    
                    FixSpanishInvertedLetter("?", "¿", p, last, ref wasLastLineClosed, i, fixAction, ref fixCount);
                    FixSpanishInvertedLetter("!", "¡", p, last, ref wasLastLineClosed, i, fixAction, ref fixCount);
    
                    if (p.Text != oldText)
                    {
                        fixCount++;
                        _totalFixes++;
                        AddFixToListView(p, fixAction, oldText, p.Text);
                    }
    
                }
                if (fixCount > 0)
                    LogStatus(_language.FixSpanishInvertedQuestionAndExclamationMarks, fixCount.ToString());
            }
    
            private void FixSpanishInvertedLetter(string mark, string inverseMark, Paragraph p, Paragraph last, ref bool wasLastLineClosed, int i, string fixAction, ref int fixCount)
            {
                if (p.Text.Contains(mark))
                {
                    bool skip = false;
                    if (last != null && p.Text.Contains(mark) && !p.Text.Contains(inverseMark) && last.Text.Contains(inverseMark) && !last.Text.Contains(mark))
                        skip = true;
    
                    if (!skip && Utilities.CountTagInText(p.Text, mark) == Utilities.CountTagInText(p.Text, inverseMark) &&
                        Utilities.RemoveHtmlTags(p.Text).TrimStart(inverseMark[0]).Contains(inverseMark) == false &&
                        Utilities.RemoveHtmlTags(p.Text).TrimEnd(mark[0]).Contains(mark) == false)
                    {
                        skip = true;
                    }
    
    
                    if (!skip)
                    {
                        int startIndex = 0;
                        int markIndex = p.Text.IndexOf(mark);
                        if (!wasLastLineClosed && ((p.Text.IndexOf("!") > 0 && p.Text.IndexOf("!") < markIndex) ||
                                                   (p.Text.IndexOf("?") > 0 && p.Text.IndexOf("?") < markIndex) ||
                                                   (p.Text.IndexOf(".") > 0 && p.Text.IndexOf(".") < markIndex)))
                            wasLastLineClosed = true;
                        while (markIndex > 0 && startIndex < p.Text.Length)
                        {
                            int inverseMarkIndex = p.Text.IndexOf(inverseMark, startIndex);
                            if (wasLastLineClosed && (inverseMarkIndex == -1 || inverseMarkIndex > markIndex))
                            {
                                if (AllowFix(p, fixAction))
                                {
                                    int j = markIndex - 1;
    
                                    while (j > startIndex && (p.Text[j] == '.' || p.Text[j] == '!' || p.Text[j] == '?'))
                                        j--;
    
                                    while (j > startIndex &&
                                           (p.Text[j] != '.' || IsSpanishAbbreviation(p.Text, j)) &&
                                           p.Text[j] != '!' &&
                                           p.Text[j] != '?' &&
                                           !(j > 3 && p.Text.Substring(j - 3, 3) == Environment.NewLine + "-") &&
                                           !(j > 4 && p.Text.Substring(j - 4, 4) == Environment.NewLine + " -") &&
                                           !(j > 6 && p.Text.Substring(j - 6, 6) == Environment.NewLine + "<i>-"))
                                        j--;
    
                                    if (".!?".Contains(p.Text[j].ToString()))
                                    {
                                        j++;
                                    }
                                    if (j + 3 < p.Text.Length && p.Text.Substring(j + 1, 2) == Environment.NewLine)
                                    {
                                        j += 3;
                                    }
                                    else if (j + 2 < p.Text.Length && p.Text.Substring(j, 2) == Environment.NewLine)
                                    {
                                        j += 2;
                                    }
                                    if (j >= startIndex)
                                    {
                                        string part = p.Text.Substring(j, markIndex - j + 1);
    
                                        string speaker = string.Empty;
                                        int speakerEnd = part.IndexOf(")");
                                        if (part.StartsWith("(") && speakerEnd > 0 && speakerEnd < part.IndexOf(mark))
                                        {
                                            while (Environment.NewLine.Contains(part[speakerEnd + 1].ToString()))
                                                speakerEnd++;
                                            speaker = part.Substring(0, speakerEnd + 1);
                                            part = part.Substring(speakerEnd + 1);
                                        }
                                        speakerEnd = part.IndexOf("]");
                                        if (part.StartsWith("[") && speakerEnd > 0 && speakerEnd < part.IndexOf(mark))
                                        {
                                            while (Environment.NewLine.Contains(part[speakerEnd + 1].ToString()))
                                                speakerEnd++;
                                            speaker = part.Substring(0, speakerEnd + 1);
                                            part = part.Substring(speakerEnd + 1);
                                        }
    
                                        var st = new StripableText(part);
                                        if (j == 0 && mark == "!" && st.Pre == "¿" && Utilities.CountTagInText(p.Text, mark) == 1 && Utilities.RemoveHtmlTags(p.Text).EndsWith(mark))
                                        {
                                            p.Text = inverseMark + p.Text;
                                        }
                                        else if (j == 0 && mark == "?" && st.Pre == "¡" && Utilities.CountTagInText(p.Text, mark) == 1 && Utilities.RemoveHtmlTags(p.Text).EndsWith(mark))
                                        {
                                            p.Text = inverseMark + p.Text;
                                        }
                                        else
                                        {
                                            string temp = inverseMark;
                                            int addToIndex = 0;
                                            while (p.Text.Length > markIndex + 1 && p.Text[markIndex + 1].ToString() == mark &&
                                                Utilities.CountTagInText(p.Text, mark) > Utilities.CountTagInText(p.Text + temp, inverseMark))
                                            {
                                                temp += inverseMark;
                                                st.Post += mark;
                                                markIndex++;
                                                addToIndex++;
                                            }
    
                                            p.Text = p.Text.Remove(j, markIndex - j + 1).Insert(j, speaker + st.Pre + temp + st.StrippedText + st.Post);
                                            markIndex += addToIndex;
                                        }
    
                                    }
                                }
                            }
                            else if (last != null && !wasLastLineClosed && inverseMarkIndex == p.Text.IndexOf(mark) && !last.Text.Contains(inverseMark))
                            {
                                string lastOldtext = last.Text;
                                int idx = last.Text.Length - 2;
                                while (idx > 0 && (last.Text.Substring(idx, 2) != ". ") && (last.Text.Substring(idx, 2) != "! ") && (last.Text.Substring(idx, 2) != "? "))
                                    idx--;
    
                                last.Text = last.Text.Insert(idx, inverseMark);
                                fixCount++;
                                _totalFixes++;
                                AddFixToListView(last, fixAction, lastOldtext, last.Text);
                            }
    
                            startIndex = markIndex + 2;
                            if (startIndex < p.Text.Length)
                                markIndex = p.Text.IndexOf(mark, startIndex);
                            else
                                markIndex = -1;
                            wasLastLineClosed = true;
                        }
                    }
                    if (p.Text.EndsWith(mark + "...") && p.Text.Length > 4)
                    {
                        p.Text = p.Text.Remove(p.Text.Length - 4, 4) + "..." + mark;
                    }
                }
                else if (Utilities.CountTagInText(p.Text, inverseMark) == 1)
                {
                    int idx = p.Text.IndexOf(inverseMark);
                    while (idx < p.Text.Length && !".!?".Contains(p.Text[idx].ToString()))
                    {
                        idx++;
                    }
                    if (idx < p.Text.Length)
                    {
                        p.Text = p.Text.Insert(idx, mark);
                        if (p.Text.Contains("¡¿") && p.Text.Contains("!?"))
                            p.Text.Replace("!?", "?!");
                        if (p.Text.Contains("¿¡") && p.Text.Contains("?!"))
                            p.Text.Replace("?!", "!?");
                    }
                }
            }
    
            private bool IsSpanishAbbreviation(string text, int index)
            {
                if (text[index] != '.')
                    return false;
    
                if (index + 3 < text.Length && text[index + 2] == '.') //  X
                    return true;                                    // O.R.
    
                if (index - 3 > 0 && text[index - 1] != '.' && text[index - 2] == '.') //    X
                    return true;                          // O.R.
    
                string word = string.Empty;
                int i = index - 1;
                while (i >= 0 && Utilities.AllLetters.Contains(text[i].ToString()))
                {
                    word = text[i].ToString() + word;
                    i--;
                }
    
                //Common Spanish abbreviations
                //Dr. (same as english)
                //Sr. (same as Mr.)
                //Sra. (same as Mrs.)
                //Ud.
                //Uds.
                if (word.ToLower() == "dr" || word.ToLower() == "sr" || word.ToLower() == "sra" || word.ToLower() == "ud" || word.ToLower() == "uds")
                    return true;
    
                List<string> abbreviations = GetAbbreviations();
                return abbreviations.Contains(word + ".");
            }
    Fuente: https://github.com/SubtitleEdit/subt...ommonErrors.cs

Página 3 de 4 PrimerPrimer 1234 ÚltimoÚltimo

Información de tema

Usuarios viendo este tema

Actualmente hay 1 usuarios viendo este tema. (0 miembros y 1 visitantes)

Temas similares

  1. Guía y Ejemplo para crear una Ficha de Cine
    Por japezoa en el foro Corrección de Fichas
    Respuestas: 28
    Último mensaje: 16-01-2019, 13:02:25
  2. Guía de fútbol para mujeres (infografía)
    Por pepe2982 en el foro Deportes
    Respuestas: 8
    Último mensaje: 04-07-2011, 06:11:55

Miembros que han leído este tema: 1

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •