我想替换表单
的表达式\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文本。有没有办法在使用正则表达式的崇高文本中执行此操作?我找不到{
或}
的正则表达式。
答案 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_
一个(也可选择大括号)。希望这可以解决问题!