正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。

在 androidx.core.util.PatternsCompat.java中,已经存在表达式:

/*** From androidx.core.util.PatternsCompat.EMAIL_ADDRESS*/
public static final Pattern EMAIL_ADDRESS = Pattern.compile("[a-zA-Z0-9\\+\\.\\_\\%\\-\\+]{1,256}" +"\\@" +"[a-zA-Z0-9][a-zA-Z0-9\\-]{0,64}" +"(" +"\\." +"[a-zA-Z0-9][a-zA-Z0-9\\-]{0,25}" +")+"
);

#1. 使用正则表达式,检查字符串值是否为电子邮件:

import androidx.core.util.PatternsCompat.EMAIL_ADDRESS/*** 检查字符串值是否为电子邮件** @return 如果字符串是电子邮件地址,则为 true*/
fun String.validateEmail(): Boolean = EMAIL_ADDRESS.matcher(this).matches()

#2. 添加单元测试:

@Test
fun validateEmail() {val result = "test@mailinator.com".validateEmail()assertTrue(result)
}@Test
fun validateEmailWrongEmail() {assertFalse("test@mailinator.com.".validateEmail())assertFalse("testmailinator.com".validateEmail())assertFalse("test@mailinatorcom.".validateEmail())assertFalse("test@mailinatorcom".validateEmail())
}

Android 正则表达式- 检查字符串是否为电子邮件相关推荐

  1. Android正则表达式匹配字符串

    在应用开发过程中,经常会碰到要检索出某个字符串中特定格式的字符,比如说微博@**被标记为蓝色,聊天时"[微笑]"被解析为表情等等,这就用到了正则表达式. 规则可以查阅http:// ...

  2. Python使用正则表达式检查合法IP地址

    全国高校教师Python课程高级研修班(线上,11月20-21日) 中国大学MOOC"Python程序设计基础"第5次开课 推荐图书: <Python可以这样学>,IS ...

  3. Android和Java检查字符串中是否含有表情符并和谐(替换)

    最近项目里读取文本的内容里含有了表情符,传递给后端后无法存入数据库,虽然现在后端修复了,但是我还是想自己过滤,百度了一下发现网上csdn有大量此类代码但是几乎都有错误在里面不知道是不是故意有人为之,特 ...

  4. 如何检查字符串是否包含特定单词?

    考虑: $a = 'How are you?';if ($a contains 'are')echo 'true'; 假设我有上面的代码, if ($a contains 'are') ,写语句的正确 ...

  5. 如何在Java中检查字符串是否为数字

    在解析字符串之前,如何检查字符串是否为数字? #1楼 解析它(即使用Integer#parseInt )并简单地捕获异常. =) 需要澄清的是:parseInt函数检查它是否可以在任何情况下(显然)都 ...

  6. 如何检查字符串是否包含特定的单词? [英]How do I check if a string contains a specific word?

    Consider: 考虑: $a = 'How are you?';if ($a contains 'are')echo 'true'; Suppose I have the code above, ...

  7. python代码使用正则化模块re检查字符串是否只含有要求指定的字符

    python代码使用正则化模块re检查字符串是否只含有要求指定的字符 compile():正则表达式被编译成模式对象,模式对象具有用于各种操作的方法,如搜索模式匹配或执行字符串替换. search() ...

  8. 如何检查字符串是否包含Ruby中的子字符串?

    我有一个字符串变量,内容如下: varMessage = "hi/thsid/sdfhsjdf/dfjsd/sdjfsdn\n""/my/name/is/balaji.s ...

  9. JS_11正则表达式和字符串方法

    正则表达式和字符串方法 正则表达式 创建正则对象 构造函数 字面量 匹配模式 i:忽略大小写 m:多行匹配 g:全局匹配 正则语法 正则 作用 /a/ 检查是否有a /a|b/ 检查是否有a或b {} ...

最新文章

  1. java队列_如何彻底搞懂 Java 数据结构?CSDN 博文精选
  2. 阅读笔记1(面试题功能测试-自动化提升效率)
  3. springboot thymeleaf 生成静态html
  4. 聚类算法K-Means, K-Medoids, GMM, Spectral clustering,Ncut .
  5. 重写描述符(property)魔法方法时可能遇到的问题
  6. Android So简单加固
  7. 20145209刘一阳《JAVA程序设计》第七周课堂测试
  8. 俄罗斯无人机公司Hoversrf紧随Volocopter步伐,酷炫“方程式”飞行汽车来袭
  9. (49)System Verilog字符串string详解
  10. 落魄前端,整理给自己的前端知识体系复习大纲(下篇)
  11. 解决win7检测不到第二个显示器的方法
  12. Linux下查看NVIDIA的GPU使用情况
  13. Java基础SE.03.Java面向对象
  14. matlab查询函数用法,matlab函数用法总结
  15. 耐福-NTP8849音频功放芯片有哪些功能?
  16. 无线攻击 --Fern WiFi Cracker(图形化无线密码破解工具 )
  17. php tiff 转 png,tif/tiff图片格式转换器批量jpg、png、jpeg格式转tif/tiff格式
  18. 信息爆炸,物质丰富,你不得不知的奥卡姆剃刀原则
  19. 利用端端Clouduolc的双向同步和单向同步,打造多机热备份的文件下载服务器
  20. Github上收集了70个微信小程序源码

热门文章

  1. 横河电机赢得土库曼斯坦燃气电厂控制系统和现场仪表的订单
  2. macOS seria 10.12升级到macOS Mojave的报错:xcrun: error: invalid active developer path, missing xcrun...
  3. Linux dd命令详解
  4. 了解CV和RoboMaster视觉组(五)目标跟踪:概述与光流法
  5. 圣诞节送朋友什么蓝牙耳机比较好?高颜值蓝牙耳机
  6. DZ X3用哪个版本MySQL_Discuz! X3 全新安装图文教程
  7. Android京东开普勒
  8. 我的世界java版去哪下载光影,《我的世界》中国版光影包详细安装教程 光影怎么安装?...
  9. SSM整合(用json,easyui,spring实现从数据库查找信息并进行分页)
  10. 从init3 (或其他命令行模式返回到图形界面)