在 Java 中包含多个 EmailId 的正则表达式
Regex to include multiple EmailIds in Java
我有向客户发送多封电子邮件的要求。
但是我在向多个电子邮件 ID 发送电子邮件时遇到问题。
例如,如果我写
s@t.com;r@t.com
它会给我一个错误,指出电子邮件 ID 不正确。
我希望电子邮件 ID 用分号分隔,但我的正则表达式似乎不支持分号。
正确的格式应该是:
s@t.com;d@r.com
不应允许
s;r@t.com
使用正则表达式
myregex = "^['_A-Za-z0-9-\+]+(\.[_A-Za-z0-9-]+)*@[A-Za-z0-9-]+(\.[A-Za-z0-9]+)*(\.[A-Za-z]{2,})$"
请指导。
我认为如果你使用 string.split("_");你会好起来的。我用于我的 bodyremoveregex=(εεεε 在线)([]* [0-9]:[0-9], [0-9]/ [0-9])*__(/**/) 并且有效 correctly.You 只需在 expressions.For 之间添加 _ 某些原因它不显示 _ 符号我的回答所以想象一下我到处都有 __ 我的意思是 _.
您有 1 封电子邮件的正则表达式。
现在,您要检查字符串是否包含 email
+ ( ;
+ email
) {任意次数} .
您需要将之前的模式用作没有锚点的块,并像这样构建最终模式:
String myregex = "['_A-Za-z0-9-+]+(?:\.[_A-Za-z0-9-]+)*@[A-Za-z0-9-]+(?:\.[A-Za-z0-9]+)*\.[A-Za-z]{2,}";
String final_pattern = "\A" + regex + "(?:;" + regex + ")*" + "\z";
请注意,\A
是字符串的 明确的 开头,而 \z
- 非常 的字符串结尾锚.
另请注意,字符 class 中的 +
失去了量词的特殊含义(1 次或更多次 ),并且 becomes/is 仅被视为文字 +
符号。我还删除了不必要的分组并将所有捕获组变为非捕获以进行 "cleaner" 匹配(如果您不需要捕获的值,为什么将它们存储在每个组的堆栈中?)。
我有向客户发送多封电子邮件的要求。
但是我在向多个电子邮件 ID 发送电子邮件时遇到问题。
例如,如果我写
s@t.com;r@t.com
它会给我一个错误,指出电子邮件 ID 不正确。
我希望电子邮件 ID 用分号分隔,但我的正则表达式似乎不支持分号。
正确的格式应该是:
s@t.com;d@r.com
不应允许
s;r@t.com
使用正则表达式
myregex = "^['_A-Za-z0-9-\+]+(\.[_A-Za-z0-9-]+)*@[A-Za-z0-9-]+(\.[A-Za-z0-9]+)*(\.[A-Za-z]{2,})$"
请指导。
我认为如果你使用 string.split("_");你会好起来的。我用于我的 bodyremoveregex=(εεεε 在线)([]* [0-9]:[0-9], [0-9]/ [0-9])*__(/**/) 并且有效 correctly.You 只需在 expressions.For 之间添加 _ 某些原因它不显示 _ 符号我的回答所以想象一下我到处都有 __ 我的意思是 _.
您有 1 封电子邮件的正则表达式。
现在,您要检查字符串是否包含 email
+ ( ;
+ email
) {任意次数} .
您需要将之前的模式用作没有锚点的块,并像这样构建最终模式:
String myregex = "['_A-Za-z0-9-+]+(?:\.[_A-Za-z0-9-]+)*@[A-Za-z0-9-]+(?:\.[A-Za-z0-9]+)*\.[A-Za-z]{2,}";
String final_pattern = "\A" + regex + "(?:;" + regex + ")*" + "\z";
请注意,\A
是字符串的 明确的 开头,而 \z
- 非常 的字符串结尾锚.
另请注意,字符 class 中的 +
失去了量词的特殊含义(1 次或更多次 ),并且 becomes/is 仅被视为文字 +
符号。我还删除了不必要的分组并将所有捕获组变为非捕获以进行 "cleaner" 匹配(如果您不需要捕获的值,为什么将它们存储在每个组的堆栈中?)。