将文字字符串与正则表达式匹配

有时你需要将文字(子)字符串与正则表达式匹配,尽管该子字符串包含 RE 元字符。虽然是的,它可以编写代码中插入适当的反斜杠,使这项工作(使用 string map)这是最简单的,只是前面加上***= 的模式,这使得 RE 引擎处理字符串只是文字字符的休息,禁止所有进一步元字符。

set sampleText "This is some text with \[brackets\] in it."
set searchFor {[brackets]}

if {[ regexp ***=$searchFor $sampleText ]} {
    # This message will be printed
    puts "Found it!"
}

请注意,这也意味着你不能使用任何锚点。