java - 检查字符串中存在的点(。)而不将其视为正则表达式
问题描述
我是java新手。我目前正在练习字符串方法。我想检查电子邮件是否包含“gmail.com”。这是我想出的代码
System.out.println(domain.matches(".*gmail.com(.*)"));
但是这里的点(。)表示任何字符,所以即使我将字符串作为“xyz@gmailpcom”传递,它也会返回true。基本上我想检查字符串中的点(。)而不将其视为正则表达式。
解决方案
如果您只想检查它是否包含gmail.com
,则只需使用contains
:
System.out.println(domain.contains("gmail.com"));
如果在稍后阶段您想使用正则表达式但转义一个点,请在正则表达式中使用反斜杠,这需要再次转义以用于 Java 字符串文字:
domain.matches(".*gmail\\.com(.*)")
推荐阅读
- javascript - TypeError:无法读取 null 的属性 'foo' - Object,React
- javascript - 如何使用标头、有效负载和正文制作 httpclient 获取请求?角度 API
- python - Pygame(我正在尝试为我的课程制作一个与 agar.io 非常相似的游戏)我怎样才能让它让背景移动
- c - 将平台设置为 WIN32,以便在 Visual Studio 2019 中从命令行编译 C 代码
- node.js - 运行 yo @superset-ui/superset 时遇到权限问题
- rest-assured - 放心获取数组对象名
- networking - 如何根据Netlogo中的正态分布为网络中的每只海龟分配不同的值
- javascript - 匹配两个字符串之外的所有内容
- amazon-web-services - 如何指定要使用多少个 ec2 实例来分配负载
- r - rpart 摘要:图中缺少变量