pub fn parse_rss_person(text: &str) -> PersonExpand description
Parses an RSS person string into a structured Person.
Recognizes common RSS author formats:
email (Name)→Person { name: Some("Name"), email: Some("email") }Name <email>→Person { name: Some("Name"), email: Some("email") }- bare email (contains
@) →Person { email: Some(text) } - plain string →
Person { name: Some(text) }
§Examples
use feedparser_rs::util::text::parse_rss_person;
let p = parse_rss_person("editor@example.com (John Editor)");
assert_eq!(p.name.as_deref(), Some("John Editor"));
assert_eq!(p.email.as_deref(), Some("editor@example.com"));
let p = parse_rss_person("John Editor <editor@example.com>");
assert_eq!(p.name.as_deref(), Some("John Editor"));
assert_eq!(p.email.as_deref(), Some("editor@example.com"));
let p = parse_rss_person("just-a-name");
assert_eq!(p.name.as_deref(), Some("just-a-name"));
assert!(p.email.is_none());