sublime text替换并查找表达式正则表达式

时间:2015-01-18 04:34:40

标签: latex sublimetext3

我想替换表单

的表达式
\theta^\top x_2 +x_1 or \theta^\top x_{2} +x_{1} or \theta^{\top} x_{2} +x_{1} or \theta^{\top}x_{2}+x_{1}

或同一乳胶数学命令的任何其他组合 通过

\theta \diamond x

使用sublime文本。有没有办法在使用正则表达式的崇高文本中执行此操作?我找不到{}的正则表达式。

1 个答案:

答案 0 :(得分:0)

这是因为{}是正则表达式语法的一部分。您可以使用斜杠(\)来逃避它们。这样的事情可能有用:

\\theta\^\{?\\top\}?\s*\{?x_\{?2\}?\s*\+\s*x_\{?1\}?

让我们分解。

  • \\theta\^将匹配字符串\theta。请注意,我们必须转义\t^,因为\t是一个标签,^是正则表达式语法的一部分。
  • \{?\}?将匹配{}一次或根本不匹配。我们必须再次摆脱括号。问号(?)表示此字符可以出现0或1次。
  • \\top - 再次,我们必须转义制表符\t
  • \s* - 空格字符(\s次。
  • x_\{?2\}?\s*\+\s*x_\{?1\}?将匹配x_,可选花括号与2,零个或多个空格后跟+(这也是正则表达式语法的一部分,因此我们必须将其转义),然后x_一个(也可选择大括号)。

希望这可以解决问题!