【leecode】独特的电子邮件地址
每封电子邮件都由一个本地名称和一个域名组成,以 @ 符号分隔。
例如,在 alice@leetcode.com中, alice 是本地名称,而 leetcode.com 是域名。
除了小写字母,这些电子邮件还可能包含 ',' 或 '+'。
如果在电子邮件地址的本地名称部分中的某些字符之间添加句点('.'),则发往那里的邮件将会转发到本地名称中没有点的同一地址。例如,"alice.z@leetcode.com” 和 “alicez@leetcode.com” 会转发到同一电子邮件地址。 (请注意,此规则不适用于域名。)
如果在本地名称中添加加号('+'),则会忽略第一个加号后面的所有内容。这允许过滤某些电子邮件,例如 m.y+name@email.com 将转发到 my@email.com。 (同样,此规则不适用于域名。)
可以同时使用这两个规则。
给定电子邮件列表 emails,我们会向列表中的每个地址发送一封电子邮件。实际收到邮件的不同地址有多少?
输入:["test.email+alex@leetcode.com","test.e.mail+bob.cathy@leetcode.com","testemail+david@lee.tcode.com"]
输出:
解释:实际收到邮件的是 "testemail@leetcode.com" 和 "testemail@lee.tcode.com"。
class Solution:
def numUniqueEmails(self, emails):
"""
:type emails: List[str]
:rtype: int
"""
import re
num_list = []
for email in emails:
email_head = re.findall('(.*)@', email)[0]
email_tail = re.findall('@.*', email)[0]
email_body_1 = email_head.replace('.', '')
email_body_2 = re.findall('(.*?)\\+', email_body_1)
# print(email_body_2)
if email_body_2:
email_body_2 = email_body_2[0]
else:
email_body_2 = email_body_1
num_list.append(email_body_2+email_tail)
# print(num_list)
return len(set(num_list))
解答
【leecode】独特的电子邮件地址的更多相关文章
- [Swift]LeetCode929. 独特的电子邮件地址 | Unique Email Addresses
		Every email consists of a local name and a domain name, separated by the @ sign. For example, in ali ... 
- 【LeetCode】Unique Email Addresses(独特的电子邮件地址)
		这道题是LeetCode里的第929道题. 题目要求: 每封电子邮件都由一个本地名称和一个域名组成,以 @ 符号分隔. 例如,在 alice@leetcode.com中, alice 是本地名称,而 ... 
- leetCode 929 独特的电子邮件地址
		题目: 每封电子邮件都由一个本地名称和一个域名组成,以 @ 符号分隔. 例如,在 alice@leetcode.com中, alice 是本地名称,而 leetcode.com 是域名. 除了小写字母 ... 
- Leetcode929.Unique Email Addresses独特的电子邮件地址
		每封电子邮件都由一个本地名称和一个域名组成,以 @ 符号分隔. 例如,在 alice@leetcode.com中, alice 是本地名称,而 leetcode.com 是域名. 除了小写字母,这些电 ... 
- LeetCode 929. Unique Email Addresses (独特的电子邮件地址)
		题目标签:String 题目说明 有两个规则针对于 local name. 所以先把local name 和 domain name 分开. 两个规则是: rule 1:'.' 会被去除. (利用re ... 
- PHP正则表达式 验证电子邮件地址
		我们最经常遇到的验证,就是电子邮件地址验证.网站上常见.各种网页脚本也都常用“正则表达式”(regular expression)对我们输入的电子邮件地址进行验证,判断是否合法.有的还能分解出用户名和 ... 
- shell(sed/gawk)脚本(计算目录文件/验证电话号码/解析电子邮件地址)
		1.计算目录文件 #!/bin/bash mypath=`echo $PATH | sed 's/:/ /g'`#注意` ` 和 ‘ ’ count= for directory in $mypath ... 
- C++11标准 STL正则表达式 验证电子邮件地址
		转自:http://www.cnblogs.com/yejianfei/archive/2012/10/07/2713715.html 我们最经常遇到的验证,就是电子邮件地址验证.网站上常见.各种网页 ... 
- php RFC兼容的电子邮件地址验证
		php中,进行RFC兼容的电子邮件地址验证的方法,有需要的朋友参考下吧. 分享一个可以验证RFC兼容的电子邮件地址的代码,支持RFC1123,2396,3696,4291,4343,5321等的验证. ... 
随机推荐
- elasticsearch 权威指南聚合阅读笔记(七)
			count(1) select clssId,count(1) from student group by classId { "size":0, "aggs" ... 
- 【ACM】poj_2210_Metric Time_201308011933
			Metric TimeTime Limit: 1000MS Memory Limit: 65536K Total Submissions: 2550 Accepted: 783 Descripti ... 
- Windows 10不能正常打开开始菜单问题修复
			1.可以尝试通过命令重新注注册Windows Store app: powershell -ExecutionPolicy Unrestricted Add-AppxPackage -DisableD ... 
- windows终端 进入文件夹
			盘符: 例如想进入D盘 d: cd 进入到当前盘某个目录.cd \ 进入当前盘根目录cd \windows 进入到当前盘Windows目录cd.. 退出到上一级目录 注:进入含有特殊字符目录时需要加引 ... 
- Kafka集群部署及測试
			题记 眼下我们对大数据进行研究方向以Spark为主,当中Spark Streaming是能够接收动态数据流并进行处理.那么Spark Streaming支持多源的数据发送端,比如TCP.ZeroMQ. ... 
- Sinowal Bootkit 分析-中国红客网络技术联盟 - Powered by Discuz!
			訪问原文 (一)模块组成 感染过Sinowal的电脑,Sinaowal在硬盘中的分布例如以下图: ; Sector Offset ... 
- viz.js操作流程
			1.下载依赖的js文件,并引入 <script src="${root }/resources/js/graphviz/viz.js"></script> ... 
- 0x58B 四边形不等式
			bzoj1563: [NOI2009]诗人小G 还有优化二维区间DP的,形如f[i][j]min{f[i][k]+f[k][j+1]+val(i,j)} 其中val满足四边形不等式,而且对于任意a&l ... 
- asp.net的TextBox回车触发指定的按钮事件
			一; event.returnValue = false; document.all[button].click(); } } ... 
- Navcat12 for mysq 激活工具
			Navcat12 for mysq 激活 https://www.cnblogs.com/sunyangCoder/p/9060454.html 
