在下面的正则表达式中,"(?i)"和"?@"是什么意思?
(?i)<.*?@(?P<domain>\w+\.\w+)(?=>)
Run Code Online (Sandbox Code Playgroud)
我知道 "?" 表示零或一,我设置不区分大小写.
此正则表达式从mailto字段中的电子邮件地址捕获域,但不包括@符号.它是从SPLUNK 6.0.2中生成的erex命令
ael*_*lor 21
演示:https://regex101.com/r/hE9gB4/1
(?i)<.*?@(?P<domain>\w+\.\w+)(?=>)
Run Code Online (Sandbox Code Playgroud)
它实际上从电子邮件ID获取您的域名:
(?i) 使它匹配不区分大小写和
?@什么,但字面上@匹配字符@.
在?你?@的一部分.*?,我们称之为一个懒惰的运营商,它会给你的文字<和@
如果你不使用它?之后.*它将匹配所有事情<到最后.(我们称之为贪婪的运营商)