On 五, 2010-06-18 at 22:33 +0800, Tusooa Zhu wrote: > 在 星期五 18 6月 2010 02:06:57,listofx 写 > 道: > > 通常,邮件头中发件人有如下格式 > > From: xxx yyy <[email protected]> > > From: “xxx yyy” <[email protected]> > > From: [email protected] > > > > 我想提取这样一行中的地址(只是 > [email protected]),该如何进行? > > > > 我知道:如果不考虑第三种情况,采用<字 > 符作为字段分隔符,使用cut或者awk就 > > 很容易得到结果。 > > > > sed能做到吗? > > 在发邮件的时候,我想到一个办法,还是想 > 看看是否有别的方式。 > > sed -e 's/.*<\(.*\)>.*/\1/'
我在man sed中看到\1的解释,但是没有看懂。即使看到您的回复,动手操作了一 下,还是不明白\1的作用。 …… 我终于在手里的一本电子书中找到了相应信息。也许info sed中有解释(info sed 的信息比man sed详细),但是个人真的不喜欢info,凡是按键和vi不一致的都不 习惯。 谢谢! 解释如下,放在这里说不定有用。 The sed editor uses parentheses to define a substring component within the substitution pattern. You can then reference each substring component using a special character in the replacement pattern. The replacement character consists of a backslash and a number. The number indicates the position of the substring component. The sed editor assigns the first component the character \1, the second component the character \2, and so on. -- ubuntu-zh mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-zh
