gpt4 book ai didi

python - 正则表达式匹配双下划线?

转载 作者:数据小太阳 更新时间:2023-10-29 02:05:40 34 4
gpt4 key购买 nike

我正在尝试扩展 python.lang 文件,以便突出显示 __init__ 等方法。我一直在尝试提出一个匹配所有 __privateMethods() 的正则表达式。

python.lang 是一个 XML 文件,包含 python 文件的所有突出显示规则。例如:

<context id="special-variables" style-ref="special-variable">
<prefix>(?&lt;![\w\.])</prefix>
<keyword>self</keyword>
<keyword>__name__</keyword>
<keyword>__debug__</keyword>
</context>

我如何扩展它以匹配双下划线?


[解决方案]:我添加到我的 python.lang 文件中的内容(如果有人感兴趣的话):

首先,您需要在定义样式的顶部附近添加这一行。

<style id="private-methods" _name="Private Methods" map-to="def:special-constant"/>

然后您将添加 Carles provided in his answer 的正则表达式:

<context id="private-methods" style-ref="private-methods">
<match>(__[a-zA-Z_]*(__)?)</match>
</context>

这是完成后的样子!

enter image description here

最佳答案

应该是:

(__[a-zA-Z0-9_]*(__)?)

为了匹配以下所有内容:

__hello()
__init__()
__this_is_a_function()
__this_is_also_a_function__()
__a_URL2_function__()

关于python - 正则表达式匹配双下划线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4902509/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com