javascript 如果不在降价代码块内,则正则表达式匹配字符
javascript regex to match a char if not inside a markdown code block
我正在尝试找出如何匹配不在降价代码块之间的所有字符 '
。使用 VSCode 扩展 regreplace
VSCode 似乎使用 Javascript 正则表达式。
例如:
match this one '
```
don't match this
```
match this as well '
```
not this one '
```
yes to this one '
`not this ' one`
目标是用 ’
char
替换匹配的
目前我有这个正则表达式:
(?:(?!`[.\n]*?'))(')[.\n]*?(?!`)
匹配所有 '
甚至是代码块中的那些。
你可以把它作为最后的手段。
它找到一个 '
在任何偶数组代码定界符之前
这意味着它在外面,而不是里面。
我说这是最后的手段,因为这是一种低效的方法。
但是,如果块的数量不是那么多,那应该不会太糟糕。
查找:
'(?=[^`]*(?:`[^`]*`[^`]*)*$)
替换:’
示例:https://regex101.com/r/gdkvdq/1
可读版本:
'
(?=
[^`]*
(?:
` [^`]* `
[^`]*
)*
$
)
我正在尝试找出如何匹配不在降价代码块之间的所有字符 '
。使用 VSCode 扩展 regreplace
VSCode 似乎使用 Javascript 正则表达式。
例如:
match this one '
```
don't match this
```
match this as well '
```
not this one '
```
yes to this one '
`not this ' one`
目标是用 ’
char
目前我有这个正则表达式:
(?:(?!`[.\n]*?'))(')[.\n]*?(?!`)
匹配所有 '
甚至是代码块中的那些。
你可以把它作为最后的手段。
它找到一个 '
在任何偶数组代码定界符之前
这意味着它在外面,而不是里面。
我说这是最后的手段,因为这是一种低效的方法。
但是,如果块的数量不是那么多,那应该不会太糟糕。
查找:
'(?=[^`]*(?:`[^`]*`[^`]*)*$)
替换:’
示例:https://regex101.com/r/gdkvdq/1
可读版本:
'
(?=
[^`]*
(?:
` [^`]* `
[^`]*
)*
$
)