Estoy tratando de hacer coincidir las cadenas que están rodeadas de acentos graves, pero no están rodeadas de triples acentos graves.
Por ejemplo:
match: `Debería ser emparejado`
no debe coincidir: ``` `Hola mundo` ```
Esto es lo que he probado hasta ahora: https://regex101.com/r/P4MhiM/1
consigo pasar este caso de prueba
primero capturar todas las coincidencias en comillas simples
\`(?:.+)\`segundo filtro, las coincidencias solo se caracterizan, no las tildes ni los espacios en blanco
\`(?:[^\`||\s]+)\`Haga coincidir y capture una parte de la coincidencia, luego use la lógica personalizada en el reemplazo:
const text = "\n``` `Hello world` ```\n\n\n`Matched!`\n"; const rx = /```.*?```|`([^`\n]+)`/g; console.log( text.replace(rx, (x, y) => y ? `<code>${y}</code>` : x) )Vea la demostración de expresiones regulares . Detalles :
```.*?``` - cadenas entre triples acentos graves (sin saltos de línea entre acentos graves)| - o`([^`\n]+)` - cadenas entre acentos graves sin caracteres de salto de línea.