代码搜索

图片.png

代码搜索视图让您可以扫描数据库中的每一段脚本。您可以组合使用以下选项:

按钮选项效果
Aa区分大小写勾选后,搜索将区分大小写——“A”和“a”被视为不同的字符。
\b全字匹配只保留与其他字母或数字相连的匹配结果。以空格、标点等分隔的词才会被匹配。
. *正则表达式把您的查询当作正则表达式来解释,让您用上模式匹配的全部能力(量词、字符类、锚点等)。区分大小写和全字匹配选项仍可同时使用。

需要重温正则表达式语法?https://regexone.com 上有一份简明教程。

正则表达式示例:

下面这个正则表达式可以找出所有 where 子句按 ID 过滤的 select

\bselect\b[^;]*(?<!\.)\bid\b

这有助于您快速找出可以把 first(select myTable where ID = searchId) 替换为更快写法 record(myTable, searchId) 的地方。

逐步解析:

正则表达式片段说明
\bselect\b匹配完整单词 select(避免匹配到“selected”之类的词)。
[^;]*匹配零个或多个除 ; 以外的字符,确保 selectid 之间不出现分号。
(?<!\.)一个否定后行断言,确认 id 之前紧邻的位置没有 .
\bid\b匹配完整单词 id(避免匹配到“userid”或“ident”之类的子串)。