regex - 用于替换包含乳胶显示数学的符号的正则表达式
问题描述
有时在 Latex 中,我需要在开头和结尾$$
用 with 替换包含一些数学语法的符号。通常这两种情况都在孤立的线上,所以我不能使用像or之类的锚点。\[
\]
^
$
最小的例子:我想改变
$$
x^2
$$
至
\[
x^2
\]
数学语法可能会运行超过两行。我通常是手动完成的。是否有一个正则表达式可以解决问题?
解决方案
您可以使用此正则表达式:
\$\$(.*?)\$\$
但请注意,您需要激活dotAll
模式。
如果您的语言不支持正则表达式标志,请使用
\$\$((.|\n)*?)\$\$
反而。
这是javascript中的一个示例:
const regex = /\$\$(.*?)\$\$/gs;
const source = `
$$
x^2
$$
`;
const result = source.replace(regex, '\\[$1\\]');
console.log(result);
推荐阅读
- python - 如何从 QTextBrowser 中选择文本并在单击按钮时将其移动到另一个 QTextBrowser 对象?
- python - 预期的字符串或缓冲区:过滤 html 标签
- powershell - 使用 Powershell 解析 Word 文档
- powershell - 从 PowerShell 调用 MS Graph API
- javascript - 使用符号或数字重命名解构对象键
- testing - 如何通过TestCafe中的层次结构遍历嵌套的框架树?
- push-notification - Ionic 4、Firebase-x 和 FCM 带有操作按钮的推送通知
- kivy - .kv 文件中的 MDDataTable
- python - docker内部的Django服务器导致机器人测试出现空白屏幕?
- javascript - 如何让我的 Discord 机器人读取谁将用户从语音频道中移出?