我对正则表达式中的反斜杠感到困惑.在正则表达式中,a \具有特殊含义,例如,\d表示十进制数字.如果在反斜杠前添加反斜杠,则此特殊含义会丢失.在正则表达式中,人们可以阅读:
也许最重要的元字符是反斜杠,
\.与Python字符串文字一样,反斜杠后面可以跟各种字符,以指示各种特殊序列.它也用于转义所有元字符,因此您仍然可以在模式中匹配它们; 例如,如果你需要匹配一个[或者\,你可以在它们前面加一个反斜杠来删除它们的特殊含义:\[或者\\.
所以print(re.search('\d', '\d'))给出None因为\d匹配任何十进制数字,但没有\d.
我现在期望print(re.search('\\d', '\d'))匹配,\d但答案仍然是None.
仅print(re.search('\\\d', '\d'))给出输出<_sre.SRE_Match object; span=(0, 2), match='\\d'>.
有人有解释吗?
我想获得类似于命令的弹性搜索集群的健康状况
curl -XGET 'http://localhost:9200/_cluster/health?pretty=true'
Run Code Online (Sandbox Code Playgroud)
但使用蟒蛇。我做了以下
from elasticsearch.client import ClusterClient
esc = ClusterClient([{'host': 'localhost', 'port': 9200}])
esc.health();
Run Code Online (Sandbox Code Playgroud)
但我得到的只是一个
AttributeError: 'list' object has no attribute 'transport'
Run Code Online (Sandbox Code Playgroud)
我在 health() 中使用了一些参数,例如我们的索引和级别,但我弄乱了语法。有人有工作的例子吗?
问候,托比