在Python代码中查找所有浮点文本

在Python代码中查找所有浮点文本,python,ide,komodo,Python,Ide,Komodo,我试图在Python代码中找到所有出现的文字浮点值。我可以用科莫多(或其他方式)来做吗 换句话说,我希望找到每一行使用0.0、1.5或1e5之类的内容,假设Python将其解释为浮点文本(例如,没有注释) 我将Komodo6.0与Python3.1结合使用 如果可能的话,找到字符串和整数文本的方法也很好。您可以通过选择正则表达式所需的内容来实现这一点 此命令(在终端上运行)应起到以下作用: sed -r "s/^([^#]*)#.*$/\1/g" YOUR_FILE | grep -P "[^'

我试图在Python代码中找到所有出现的文字浮点值。我可以用科莫多(或其他方式)来做吗

换句话说,我希望找到每一行使用0.0、1.5或1e5之类的内容,假设Python将其解释为浮点文本(例如,没有注释)

我将Komodo6.0与Python3.1结合使用


如果可能的话,找到字符串和整数文本的方法也很好。

您可以通过选择正则表达式所需的内容来实现这一点

此命令(在终端上运行)应起到以下作用:

sed -r "s/^([^#]*)#.*$/\1/g" YOUR_FILE | grep -P "[^'\"\w]-?[1-9]\d*[.e]\d*[^'\"\w]"
您可能需要调整它以获得更好的结果

`sed'删除注释,而grep只选择包含(一小部分-我给出的表达式不完美)浮点值的行

希望有帮助。

我们的团队可以轻松做到这一点

SCSE是一种搜索大型源代码库的工具,通过索引感兴趣的源代码语言的元素,比grep快得多。然后可以提出查询,使用索引可以快速定位搜索点击。查询和点击显示在GUI中,点击点击将显示包含该点击的源代码块

SCSE知道它索引的每种语言的词法结构,其精度与langauge编译器相同。(它使用精确编程语言处理器家族的代码;这个家族相当大,碰巧包括OP的目标语言Python/Perl/Java/…)。因此,它确切地知道标识符、注释和文字(整数、浮点、字符或字符串)的位置以及它们的确切内容

SCSE查询由表示感兴趣的语言元素序列的命令组成。询问

'for' ... I '=' N=103
为(“…”)附近的关键字查找一个,该关键字是用103的数值(“N”)初始化的任意标识符(I)。因为SCSE理解语言结构,所以它会忽略标记之间的语言空白,例如,它可以找到这一点,而不考虑中间的空白、空白、换行符或注释

查询标记I、N、F、S、C分别表示I(标识符)、Natural(数字)、F(loat)、S(tring)和C(omment)。OP最初的问题是查找所有浮点,因此这是一个几乎微不足道的查询

F
类似地,用于查找所有字符串文字(“S”)和整型文字(“N”)。如果您只想找到Pi附近值的副本,则需要添加下限和上限约束:

F>3.14<3.16

F>3.14Komodo有一个正则表达式查找,可以与正则表达式搜索模式一起使用。。。这不是常用的东西吗?是否有一个在Python中测试过的正则表达式?谢谢。。。当然,这与Komodo自动将光标移动到使用它的每一行不同,但总比什么都没有好。。。