我想要一个函数来替换我在字符串中找到的 LinkedIn 个人资料。
例子:
- 你可以找到我的 linkedin https: www.linkedin.com/in/kim-zand-3126573/
使用该功能后应为:
- 你可以找到我的 linkedin [Linkedin]
strA ='[Linkedin]'
Def linkedin(sentence):
urlReg = "^https?:\/\/?(w{3}.)? linkedin\.\/.$"
res = re.search(urlReg, sentence)
print(res)
if res != None:
## replace urls
sentence= re.sub(urlReg,strA, sentence)
return (sentence)
当我打印(res)时它没有接受字符串,我认为我的正则表达式不正确
关于您尝试的模式的一些注意事项:
//
inhttps:www.linkedin.com/in/kim-zand-3126573/
(可能是打字错误?)linkedin\.\/
与 linkedin.com 不匹配,因为\/
匹配/
linkedin\.
^
当存在锚点时,文本不在字符串的开头//
不是可选的,并且您不必转义正斜杠例如你可以匹配:
或者如果数据中确实没有双正斜杠:
然后替换为
[Linkedin]
查看正则表达式演示
或者对给定的示例进行更具体的匹配,匹配
-digits
最后一个之前的部分/
查看另一个正则表达式演示
例子:
输出