python获取字符串中的email


Posted in Python onMarch 31, 2022

 调用re库,通过使用compile、findall获取字符串中的email

import re
email=re.compile(r'[a-z0-9\-\.]+@[0-9a-z\-\.]+')
emailtest=r'adfasldfjdsl fan02@163.com'
emailset=set()
for em in email.findall(emailtest):
    emailset.add(em)
for em1 in sorted(emailset):
    print(em1)

修改:

通过调用函数,并动态地为字符串赋值

import re
def emailre(teststr):
    email=re.compile(r'[a-z0-9\-\.]+@[0-9a-z\-\.]+')
    emailset=set()  #列表
    for em in email.findall(teststr):
        emailset.add(em)
    for eml in sorted(emailset):
        print(eml)
emailtest='sdfdsgf asd03@162.com'
emailre(emailtest)
#或
strtest=r'sdgfsg abc@163.com'
emailre(strtest)

运行结果:

python获取字符串中的email

从指定的字符串中提取Email:

  /**
   * 从指定的字符串中提取Email
   * content 指定的字符串
   */
  public static String parse(String content) {
  String email = null;
  if (content==null || content.length()<1) {
 return email;
  }
 //找出含有@
 int beginPos;
 int i;
String token = "@";
String preHalf="";
 String sufHalf = "";

beginPos = content.indexOf(token);
 if (beginPos>-1) {
 //前项扫描
 String s = null;
  i= beginPos;
 while(i>0) {
s = content.substring(i-1,i);
 if (isLetter(s))
    preHalf = s+preHalf;
  else
    break;
  i--;
  }
 //后项扫描
  i= beginPos+1;
  while( i<content.length()) {
   s = content.substring(i,i+1);
   if (isLetter(s))
    sufHalf =  sufHalf +s;
   else
    break;
    i++;  
   }
  //判断合法性
  email = preHalf + "@" + sufHalf;
   if (isEmail(email)) {
   return email;
 }
  }
return null;
}

 /**
 * 判断是不是合法Email
* email Email地址
*/
public static boolean isEmail(String email) {
 try {
   if (email==null || email.length()<1 || email.length()>256) {
   return false;
 }
   
String check = "^([0-9a-zA-Z]+[_.0-9a-zA-Z-]+)@([a-zA-Z0-9-]+[.])+([a-zA-Z]{2,3})$";
 Pattern regex = Pattern.compile(check);
 Matcher matcher = regex.matcher(email);
  boolean isMatched = matcher.matches();
 if(isMatched) {
   return true;
 } else {
  return false;
 }
 } catch (RuntimeException e) {
 return false;
  } 
 }
 
 /**
  * 判断是不是合法字符
 * c 要判断的字符
 */
public static boolean isLetter(String c) {
 boolean result = false;
 if (c==null || c.length()<0) {
  return false;
 }
 //a-z 
 if (c.compareToIgnoreCase("a")>=0 && c.compareToIgnoreCase("z")<=0) {
  return true;
 }
 //0-9
 if (c.compareToIgnoreCase("0")>=0 && c.compareToIgnoreCase("9")<=0) {
 return true;
 }
 //. - _
 if (c.equals(".") || c.equals("-") || c.equals("_") ) {
 return true;
}
 return result; 
 }

到此这篇关于python获取字符串中的email的文章就介绍到这了,更多相关获取字符串中的email内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python计算最大优先级队列实例
Dec 18 Python
使用简单工厂模式来进行Python的设计模式编程
Mar 01 Python
Python 包含汉字的文件读写之每行末尾加上特定字符
Dec 12 Python
python版本的仿windows计划任务工具
Apr 30 Python
Python自定义装饰器原理与用法实例分析
Jul 16 Python
Python列表推导式与生成器用法分析
Aug 02 Python
Python @property原理解析和用法实例
Feb 11 Python
Python计算指定日期是今年的第几天(三种方法)
Mar 26 Python
Python @property及getter setter原理详解
Mar 31 Python
python中sympy库求常微分方程的用法
Apr 28 Python
python怎么调用自己的函数
Jul 01 Python
python实现ping命令小程序
Dec 28 Python
Python利用FlashText算法实现替换字符串
详解Python flask的前后端交互
Mar 31 #Python
ubuntu安装jupyter并设置远程访问的实现
Python中time与datetime模块使用方法详解
Mar 31 #Python
Python用tkinter实现自定义记事本的方法详解
Mar 31 #Python
Python利用zhdate模块实现农历日期处理
Mar 31 #Python
详解Python中__new__方法的作用
Mar 31 #Python
You might like
dedecms中显示数字验证码的修改方法
2007/03/21 PHP
PHP 基于Yii框架中使用smarty模板的方法详解
2013/06/13 PHP
php页面防重复提交方法总结
2013/11/25 PHP
详解WordPress中用于更新和获取用户选项数据的PHP函数
2016/03/08 PHP
php+mongodb判断坐标是否在指定多边形区域内的实例
2016/10/28 PHP
PHP队列场景以及实现代码实例详解
2021/02/26 PHP
jQuery中toggleClass()方法用法实例
2015/01/05 Javascript
详谈javascript中的cookie
2015/06/03 Javascript
JS获取鼠标相对位置的方法
2016/09/20 Javascript
使用jquery如何获取时间
2016/10/13 Javascript
jQuery学习笔记之入门
2016/12/14 Javascript
vue2.0嵌套路由实现豆瓣电影分页功能(附demo)
2017/03/13 Javascript
vue学习笔记之vue1.0和vue2.0的区别介绍
2017/05/17 Javascript
vue2.0 与 bootstrap datetimepicker的结合使用实例
2017/05/22 Javascript
详解如何使用 vue-cli 开发多页应用
2017/12/16 Javascript
JavaScript运行原理分析
2018/02/09 Javascript
js中this的指向问题归纳总结
2018/11/28 Javascript
详解Vue.js自定义tipOnce指令用法实例
2018/12/19 Javascript
详解vue.js移动端配置flexible.js及注意事项
2019/04/10 Javascript
WEB前端性能优化的7大手段详解
2020/02/04 Javascript
详解在Python中处理异常的教程
2015/05/24 Python
Python中字符串的修改及传参详解
2016/11/30 Python
python调用API实现智能回复机器人
2018/04/10 Python
python创建子类的方法分析
2019/11/28 Python
HTML5和CSS3让网页设计提升到下一个高度
2009/08/14 HTML / CSS
英国领先品牌手动工具和电动工具供应商:Tooled Up
2018/11/24 全球购物
探矿工程师自荐信
2014/01/24 职场文书
合作意向协议书范本
2014/03/31 职场文书
安全生产大检查方案
2014/05/07 职场文书
2014年党风廉政工作总结
2014/12/03 职场文书
英文商务邀请函范文
2015/01/31 职场文书
信仰观后感
2015/06/03 职场文书
就业证明函
2015/06/17 职场文书
企业廉洁教育心得体会
2016/01/20 职场文书
2016年小学优秀班主任事迹材料
2016/02/29 职场文书
创业计划书之婴幼儿游泳馆
2019/09/11 职场文书