Affinity admite el uso de expresiones regulares para buscar contenido de documentos que coincida con patrones específicos.
Las expresiones regulares se utilizan en varios contextos de Affinity:
Escribir expresiones regulares implica una sintaxis especial para especificar los patrones que desea encontrar en el texto. Los escenarios y expresiones de ejemplo que se proporcionan a continuación demuestran la sintaxis común que probablemente necesitará para escribir sus propias expresiones.
Una guía completa sobre todo el potencial de las expresiones regulares está más allá del alcance de la Ayuda de Affinity. Puede obtener más información en recursos en línea como www.regular-expressions.info y regexone.com.
Cuando una expresión coincide con letras, el panel Estados distingue entre mayúsculas y minúsculas a menos que indique explícitamente lo contrario en la expresión. El panel Buscar y reemplazar distingue entre mayúsculas y minúsculas cuando la opción de formato Coincidir mayúsculas y minúsculas de la casilla Buscar está habilitada.
En cada panel, se puede anular la distinción entre mayúsculas y minúsculas para parte o la totalidad de una expresión:
El caso de letras específicas de una expresión se puede ignorar utilizando una clase de carácter. Por ejemplo, para hacer coincidir la letra a en mayúscula o minúscula, utilice [aA] en su expresión.
Las clases de caracteres también se pueden utilizar al hacer coincidir una variedad de caracteres. Por ejemplo, [a-eA-E] coincide con una letra individual de a a e, independientemente de si es mayúscula o minúscula.
En un documento de Affinity Photo, utilizamos herramientas de retoque para eliminar el polvo y las imperfecciones de una foto pintando capas encima de ella.
En consecuencia, cada una de estas capas se denomina Eliminación de polvo o Eliminación de imperfecciones.
En el panel Estados, podemos añadir una consulta que verifique que los nombres de las capas coinciden con la expresión regular eliminación de (?i)(Polvo|Imperfecciones), es decir, «eliminación» seguido de un espacio y después Polvo o Imperfecciones. Las mayúsculas y minúsculas se ignoran en toda la expresión.
En un documento de Affinity Designer, hemos usado el nombre de la capa de relleno con desplazamiento para identificar capas que se han reposicionado manualmente a fin de crear un efecto de impresión con errores hecho a mano.
Es posible que hayamos escrito estas palabras en orden inverso en algunos lugares.
En el panel Estados, podemos añadir una consulta que verifique si los nombres de las capas coinciden con la expresión regular. (?i)(?=.*relleno)(?=.*desplazamiento).*$. Esto hace coincidir los nombres de las capas que contienen ambas palabras dondequiera que aparezcan en el nombre. Las mayúsculas y minúsculas se ignoran en toda la expresión.
En un documento de Affinity Designer para un diseño arquitectónico en CAD, los nombres de las capas identifican los componentes del edificio con un prefijo de dos letras, seguido de uno o más grupos de un guion bajo más algunos dígitos. Por ejemplo, Ss-35_10_15.
En el panel Estados, podemos controlar la visibilidad de las capas que pertenecen a una categoría de componente particular usando una expresión como [Ss][Ss](_[0-9]{1,})+. La expresión funcionará incluso si se ha escrito mal la letra del prefijo.
Por el contrario, podemos controlar la visibilidad de todas las demás capas de categorías de componentes con un pequeño cambio cerca del inicio de la expresión, de modo que se convierta en (^[Ss][Ss])(_[0-9]{1,})+.
En un documento de Affinity Publisher, queremos buscar instancias de una palabra en todo nuestro texto, pero omitir las que van precedidas por una palabra específica.
En el panel Buscar y reemplazar, con Expresión regular seleccionado en la casilla Buscar de las opciones de Formato, podemos usar la expresión (?>!proin )aliquam. Los resultados incluirán casos de aliquam, excepto los precedidos por proín y un espacio.
Es posible excluir instancias que contengan una de varias palabras anteriores. Por ejemplo, para excluir casos en los que la palabra error está precedida por el artículo «el» o «un», utilice la expresión (?>!(el|un) )error.