我正在尝试同时学习 python 和正则表达式,但我在寻找如何匹配到字符串末尾并即时进行替换方面遇到了一些麻烦。
所以,我有这样一个字符串:
ss="this_is_my_awesome_string/mysuperid=687y98jhAlsji"
我想要的是首先找到 687y98jhAlsji(我事先不知道这个内容)然后将其替换为 myreplacedstuff,如下所示:
ss="this_is_my_awesome_string/mysuperid=myreplacedstuff"
理想情况下,我想通过首先找到 mysuperid= 之后的内容(直到字符串末尾)然后执行 来执行 或 regex and replace >.replace.sub 如果这有意义。
如有任何指导,我将不胜感激。
请您参考如下方法:
你可以试试这个:
re.sub(r'[^=]+$', 'myreplacedstuff', ss)
想法是使用一个排除定界符的字符类(此处为 =)并使用 $ 锚定模式
解释:
[^=] 是一个字符类,表示所有不是=的字符
[^=]+ 此类中的一个或多个字符
$ 字符串结尾
由于正则表达式引擎从左到右工作,因此仅匹配字符串末尾不是 = 的字符。
