我在elisp代码中的某处有一个字符串变量,并希望使用带分组的正则表达式将其中的某些部分提取到其他变量中.这是你可以用任何语言写成1-2行的东西:
my ($user, $domain) = $email =~ m/^(.+)@(.+)$/;
我如何在elisp中写相同的内容?
(save-match-data ; is usually a good idea
(and (string-match "\\`\\([^@]+\\)@\\([^@]+\\)\\'" email)
(setq user (match-string 1 email)
domain (match-string 2 email) ) ))
Run Code Online (Sandbox Code Playgroud)
在GNU的Emacs Lisp参考手册是你的朋友.另见http://emacswiki.org/emacs/ElispCookbook