Python Ansible替换模块regexp,从'$';

Python Ansible替换模块regexp,从'$';,python,regex,python-2.7,replace,ansible,Python,Regex,Python 2.7,Replace,Ansible,我试图使用Ansible中的替换模块,但我不知道如何使用regexp匹配某些字符串 我试图匹配以字符$开头的字符串,但ansible一直说他找到了未知的转义字符“$” 我知道ansible使用与python相同的regexp规则,但我不能在python中也这么做,你们知道怎么做吗 我已经尝试过这些regexp规则: ^\$,[!^$],[!^$]和\s*[!^$] 最后3条规则与以$开头的字符串匹配,但如果字符串不以$开头,则也与这些字符串匹配 最后3条规则的一些示例: foo d

我试图使用Ansible中的
替换
模块,但我不知道如何使用
regexp
匹配某些字符串

我试图匹配以字符
$
开头的字符串,但ansible一直说他
找到了未知的转义字符“$”

我知道ansible使用与python相同的regexp规则,但我不能在python中也这么做,你们知道怎么做吗

我已经尝试过这些regexp规则:

^\$
[!^$]
[!^$]
\s*[!^$]

最后3条规则与以
$
开头的字符串匹配,但如果字符串不以
$
开头,则也与这些字符串匹配

最后3条规则的一些示例:

foo        doesn't match
$foo       match
$$$$       match
foo$       match
foo$bar    match
我只需要在这种情况下匹配:

foo
$foo       this case
$$$$       this case
foo$
foo$bar

使用
re.match

演示:

import re
l = ["foo", "$foo", "$$$$", "foo$", "foo$bar"]
for i in l:
    print(re.match("^\$", i))
None
<_sre.SRE_Match object at 0x0000000001D84578>
<_sre.SRE_Match object at 0x0000000001D84578>
None
None
输出:

import re
l = ["foo", "$foo", "$$$$", "foo$", "foo$bar"]
for i in l:
    print(re.match("^\$", i))
None
<_sre.SRE_Match object at 0x0000000001D84578>
<_sre.SRE_Match object at 0x0000000001D84578>
None
None
无
没有一个
没有一个

请尝试使用
regex\u search

谢谢Rakesh,我想问你,在replace模块的regexp字段中没有办法使用regex\u search?这应该适用于你的情况:“^\$.*$”