str1 = "obul@ongoose.com|bharat@ongoose.com|rbasani@ongoose.com|srinu@gmail.com|"
现在我需要通过在python中使用正则表达式或在python中以任何其他方式删除所有str2 = srinu@gmail.com|
来将上述字符串转换为ongoose.com|
答案 0 :(得分:0)
您可以将str.split
与否定索引一起使用。
例如:
str1 = "obul@ongoose.com|bharat@ongoose.com|rbasani@ongoose.com|srinu@gmail.com|"
print(str1.split("|")[-2])
输出:
srinu@gmail.com
或者如果字符串的位置是动态的。您可以使用str.endswith
str1 = "obul@ongoose.com|bharat@ongoose.com|rbasani@ongoose.com|srinu@gmail.com|"
for i in str1.split("|"):
if not i.endswith("ongoose.com"):
print(i)
答案 1 :(得分:0)
使用正则表达式
>>> import re
>>> str1 = "obul@ongoose.com|bharat@ongoose.com|rbasani@ongoose.com|srinu@gmail.com|"
>>> re.sub(r'(^|\|)[^@]*?@ongoose.com', '', str1).lstrip('!')
'srinu@gmail.com|'
没有正则表达式
>>> '|'.join([m for m in str1.split("|") if not m.endswith('@ongoose.com')])
'srinu@gmail.com|'