Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.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
Regex 扩展Perl正则表达式以容纳更多字符?_Regex_Perl - Fatal编程技术网

Regex 扩展Perl正则表达式以容纳更多字符?

Regex 扩展Perl正则表达式以容纳更多字符?,regex,perl,Regex,Perl,所以我有这个正则表达式来匹配任何电子邮件地址,我需要扩展它以包括以下内容: :或;在电子邮件之后,后跟任何可能类型的14个字符 这是我现在的表达: [A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,} 我不知道该怎么做,有人能帮忙吗 我想做一些类似的事情: [A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,}+{:;}+{14*} 但它似乎不起作用您可以: \b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}\b(?:

所以我有这个正则表达式来匹配任何电子邮件地址,我需要扩展它以包括以下内容:

:或;在电子邮件之后,后跟任何可能类型的14个字符

这是我现在的表达:

[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,}
我不知道该怎么做,有人能帮忙吗

我想做一些类似的事情:

[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,}+{:;}+{14*}
但它似乎不起作用

您可以:

\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}\b(?:[;:][\s\S]{0,14})?


请注意,任何可能类型的14个字符都是非常模糊的。这包括
\0
还是
\n
[\s\s]
的结构与“任何可能的字符”匹配,因此请澄清您的意思是否不同

使用
[…]
,可以形成一个字符类。不使用
{…}
。使用
{number}
,您可以指定左手模式重复的确切次数。试试
[A-Z0-9.\uz0%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}[:;].{14}
。如果需要匹配整个字符串,可以添加锚。如果您在使用正则表达式模式的地方提供更多的代码,那就更好了。哦,所以呃[A-Z0-9.\%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}+[:;]+[14*]?您的正则表达式排除了许多有效的电子邮件地址。您应该改为使用类似的字符。@ThisSuiteisBlack不是为了我的目的,它与我需要的匹配。它表示任何普通字符,如A-Za-z、符号和数字essentially@Link:空间呢?