本页提供了在各种上下文中使用正则表达式时正确使用转义的示例。
使用触发器表达式构造函数时,会自动添加正则表达式中的正确转义。
具有上下文的用户宏
正则表达式 \.+\"[a-z]+
带有上下文的用户宏: {$MACRO:regex:"\.+\\"[a-z]+"}
注意:
LLD 宏函数
正则表达式: \.+\"[a-z]+
LLD宏: {{#MACRO}.iregsub("\.+\\"[a-z]+", \1)}
注意:
用户宏上下文中的 LLD 宏函数
正则表达式: \.+\"[a-z]+
LLD 宏: {{#MACRO}.iregsub("\.+\\"[a-z]+", \1)}
带有上下文的用户宏: {$MACRO:"{{#MACRO}.iregsub(\".+\\\"[a-z]+\", \1)}"}
注意:
函数的字符串参数 (any)
concat
用作示例。
字符串内容: \.+\"[a-z]+
表达式: concat("abc", "\\.\\\"[a-z]+")
注意:
LLD宏函数内嵌在函数的字符串参数
正则表达式: \.+\"[a-z]+
LLD宏: {{#MACRO}.iregsub("\.+\\"[a-z]+", \1)}
表达式: concat("abc, "{{#MACRO}.iregsub(\"\\.+\\\\\"[a-z]+\", \\1)}")
注意:
具有上下文的用户宏内嵌在函数的字符串参数
正则表达式: \.+\"[a-z]+
带有上下文的用户宏: {$MACRO:regex:"\.+\\"[a-z]+"}
表达式: concat("abc, "{$MACRO:regex:\"\\.+\\\\\"[a-z]+\"}")
注意:
LLD宏函数内嵌在函数内的带上下文的用户宏中
正则表达式: \.+\"[a-z]+
LLD 宏: {{#MACRO}.iregsub("\.+\\"[a-z]+", \1)}
带上下文的用户宏 {$MACRO:"{{#MACRO}.iregsub(\".+\\\"[a-z]+\", \1)}"}
表达式: concat("abc, "{$MACRO:\"{{#MACRO}.iregsub(\\\".+\\\\\\\"[a-z]+\\\", \\1)}\"}")
注意三层转义:
带上下文的用户宏仅在字符串内
正则表达式: \.+\"[a-z]+
带上下文的用户宏: {$MACRO:regex:"\.+\\"[a-z]+"}
某些表达式的内部字符串,例如: func(arg1, arg2, arg3)="{$MACRO:regex:\"\\.+\\\\\"[a-z]+\"}"
注意: