# How can I get the subject of mail

**URL:** <https://www.ruby-forum.com/t/how-can-i-get-the-subject-of-mail/139138>\
**Category:** Ruby\
**Created:** [May 31, 2008, 9:51am UTC](https://www.ruby-forum.com/t/how-can-i-get-the-subject-of-mail/139138 "2008-05-31T09:51:13Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Jmlover](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/8baadc/32.png) [@Jmlover](https://www.ruby-forum.com/u/Jmlover)\
**Post date:** [May 31, 2008, 9:51am UTC](https://www.ruby-forum.com/t/how-can-i-get-the-subject-of-mail/139138/1 "2008-05-31T09:51:13Z")

</div>

@pop = Net::POP3.new(‘[pop.163.com](http://pop.163.com)’)  
@pop.start(@username, @password)

```
@pop.each_mail do |m|
          # How can I get the subject of me$B!)e(B
    # e$B!A!A!A!A!A!A!A!A!A!A!A!A!A!A!A!Ae(B
    # By m.pop?
end

@pop.finish

```

By the way, can I only get the mail header? How?

Thank you!

---

<div class="post-metadata">

**Author:** ![Jmlover](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/8baadc/32.png) [@Jmlover](https://www.ruby-forum.com/u/Jmlover)\
**Post date:** [May 31, 2008, 8:30pm UTC](https://www.ruby-forum.com/t/how-can-i-get-the-subject-of-mail/139138/2 "2008-05-31T20:30:46Z")

</div>

On May 31, 1:46 am, Jmlover [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> By the way, can I only get the mail header? How?
> 
> Thank you!

Here is one way.

puts m.pop.scan(/Subject:(.+)$/)

Cheers,

Craig

---

<div class="post-metadata">

**Author:** ![Jmlover](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/8baadc/32.png) [@Jmlover](https://www.ruby-forum.com/u/Jmlover)\
**Post date:** [June 1, 2008, 7:55am UTC](https://www.ruby-forum.com/t/how-can-i-get-the-subject-of-mail/139138/3 "2008-06-01T07:55:51Z")

</div>

On Jun 1, 2:23 am, Craig [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Cheers,
> 
> Craig

Thank you for your reply!

---

<div class="post-metadata">

**Author:** ![Jmlover](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/8baadc/32.png) [@Jmlover](https://www.ruby-forum.com/u/Jmlover)\
**Post date:** [June 1, 2008, 2:08pm UTC](https://www.ruby-forum.com/t/how-can-i-get-the-subject-of-mail/139138/4 "2008-06-01T14:08:54Z")

</div>

-----BEGIN PGP SIGNED MESSAGE-----  
Hash: SHA1

On Jun 1, 2008, at 1:54 AM, Jmlover wrote:

> > > end
> > 
> > Cheers,
> > 
> > Craig
> 
> Thank you for your reply!

You can use the header method if you are only interested in the header:

#!/usr/bin/env ruby

require ‘net/pop’  
pop = Net::POP.new(‘[pop.example.com](http://pop.example.com)’)  
pop.start(‘removed\_email\_address@domain.invalid’, ‘password’) do |pop|  
pop.each\_mail do |mail|  
puts mail.header.scan(/^Subject: (.+)/)  
end  
end

[http://www.ruby-doc.org/stdlib/libdoc/net/pop/rdoc/classes/Net/POPMail.html](http://www.ruby-doc.org/stdlib/libdoc/net/pop/rdoc/classes/Net/POPMail.html)

Mike

* * *

Mike S. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
[http://www.stok.ca/~mike/](http://www.stok.ca/~mike/)

The “`Stok’ disclaimers” apply.

-----BEGIN PGP SIGNATURE-----  
Version: GnuPG v1.4.9 (Darwin)

iEYEARECAAYFAkhCkQkACgkQnsTBwAWZE9rFAgCfdfz9a7fGAAmLNlt7Tolgj9J/  
Xb4AoIe1vxT1NBZ/01iFeirSLOSChPrR  
=Bqet  
-----END PGP SIGNATURE-----
