PyCharm:在路径中查找:跳过导入语句

PyCharm:在路径中查找:跳过导入语句,pycharm,Pycharm,如果我使用“在路径中查找”(ctrl-shift-f),我也会在导入语句中看到结果: 我对来自。。。导入…行 如何从“在路径中查找”中删除它们?我所知道的在当前版本中执行此操作的唯一方法是使用正则表达式: (?<!import )logged_in_or_basicauth (? 这将使用确保将包含单词import和logged\u in_或\u basicauth前面的单个空格的任何匹配项从结果中排除 注意,像+和*这样的量词不能在lookbehinds中使用,因此我们不能让这个正则

如果我使用“在路径中查找”(ctrl-shift-f),我也会在导入语句中看到结果:

我对来自。。。导入…行


如何从“在路径中查找”中删除它们?

我所知道的在当前版本中执行此操作的唯一方法是使用正则表达式:

(?<!import )logged_in_or_basicauth
(?
这将使用确保将包含单词
import
logged\u in_或\u basicauth
前面的单个空格的任何匹配项从结果中排除

注意,像
+
*
这样的量词不能在lookbehinds中使用,因此我们不能让这个正则表达式处理
import
logged\u或
之间的多个空格,除了在
import
之后硬编码更多空格之外


我在YouTrack上投票支持您的功能请求,在那里打开它是个好主意。

JetBrains IDE似乎没有这样的功能,问题变成了“查找一个包含
target
但不包含
import
”的字符串。因此,请参见以下内容:

使用
^(?。*import.*target.*$

测试用例:

from whatever import target;
import whatever from target;
target;
whatever target;
问题是它会突出显示其他单词

Reg101结果:

我想唯一的解决方案是使用regex,因为没有内置的功能可以忽略导入。我创建了一个功能请求:如果您想搜索它的定义位置,请使用“symbol”搜索,即ctrl-alt-O(或cmd-opt-O)。从那里您可以搜索用法。