Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何创建正则表达式来验证只包含gmail.com的字符串?_Java_Regex - Fatal编程技术网

Java 如何创建正则表达式来验证只包含gmail.com的字符串?

Java 如何创建正则表达式来验证只包含gmail.com的字符串?,java,regex,Java,Regex,我有一条短信和电子邮件。如果文本包含@gmail.com,则字符串为validate 例如: igoer@gmail.com igoesdr@gmail.com igoer@MAIL.ru igoer@gmail.com 我认为验证的代码是:^(+@gmail.com)。*$ 但是这个代码对我不起作用。试试这个@igor (\W|^)[\w.+\-]*@gmail\.com(\W|$) 试试^(*)(@gmail.com)$或*\\b@gmail.com\\b 我认为你的正则表达式应该在最

我有一条短信和电子邮件。如果文本包含
@gmail.com
,则字符串为validate

例如:

igoer@gmail.com igoesdr@gmail.com igoer@MAIL.ru igoer@gmail.com 
我认为验证的代码是:
^(+@gmail.com)。*$

但是这个代码对我不起作用。

试试这个@igor

(\W|^)[\w.+\-]*@gmail\.com(\W|$)
试试
^(*)(@gmail.com)$
*\\b@gmail.com\\b

我认为你的正则表达式应该在最后去掉
*
,它会起作用的。结尾额外的
*
意味着输入字符串应该以“@gmail.com”之后的任何内容结尾。您的正则表达式正在搜索类似
xyz@gmail.com.xyz
,其中
xyz
可以是任何内容。

从用户和中读取,编辑更改了用户的问题

未经编辑的原始版本的可能解决方案如下:

我有一条短信和电子邮件。如果文本包含所有邮件@gmail.com,则 字符串是有效的

可以是重复包含
@gmail
的电子邮件地址,然后是整个字符串的空白,假设该字符串仅由电子邮件地址组成

如果电子邮件地址周围可能有多个空格,您可以使用:


您可以使用
+
操作符,请参见示例:

public class Test
{
    public static void main(String[] args)
    {
        String email = "gabrielpereira@gmail.com";
        System.out.println(email.matches(".+@gmail.com"));
    }
}
//returns true

+
将检查是否存在一个或多个字符。

但不起作用
。。。什么不起作用?为什么不起作用,在我看来很好(除了可能不必要的。*最后)你的答案被标记为“低质量”。请试着用几句话解释这个解决方案的工作原理。