Mercurial > prosody-modules
view mod_ogp/test.lua @ 4530:33c149d0261d
mod_rest: Add mappings for a whole pile of XEPs
Look ma, programming in JSON!
XEP-0012: Last Activity
XEP-0077: In-Band Registration
XEP-0115: Entity Capabilities
XEP-0153: vCard-Based Avatars
XEP-0297: Stanza Forwarding
XEP-0308: Last Message Correction
XEP-0319: Last User Interaction in Presence
XEP-0333: Chat Markers
XEP-0367: Message Attaching
XEP-0372: References
XEP-0421: Anonymous unique occupant identifiers for MUCs
XEP-0428: Fallback Indication
XEP-0444: Message Reactions
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Tue, 23 Mar 2021 23:18:33 +0100 |
| parents | 38da10e4b593 |
| children |
line wrap: on
line source
local html = [[ <meta property="og:title" content="Example 1 A"> <meta property=og:title content="Example 2 B"> <meta property="og:title" content="Example 3 C" > <meta property="og:title" content="Example 4 D" /> <meta property="og:title" content="Example 5 E"/> <meta property=og:title content=Example 6 F/> <meta property="og:title" content= "Example 7 G" /> <meta property="og:title" itemprop="image primaryImageOfPage" content="Example 8 H" /> <meta property='og:title' content='Example 9 I' /> <meta content="Example 10 J" property="og:title" > <meta content="Example 11 K" property="og:title"> <meta content="Example 12 L" property="og:title"/> <meta content="Example 13 M" property="og:title" /> <meta content="Example 14 N" property=og:title > <meta content=Example 15 O property=og:title > <meta content= "Example 16 P" property="og:title" /> <meta content="Example 17 Q" itemprop="image primaryImageOfPage" property="og:title" /> <meta content= 'Example 18 R' property='og:title' /> ]] local meta_pattern = [[<meta (.-)/?>]] for match in html:gmatch(meta_pattern) do local property = match:match([[property=%s*["']?(og:.-)["']?%s]]) if not property then property = match:match([[property=["']?(og:.-)["']$]]) end local content = match:match([[content=%s*["'](.-)["']%s]]) if not content then content = match:match([[content=["']?(.-)["']$]]) end if not content then content = match:match([[content=(.-) property]]) end if not content then content = match:match([[content=(.-)$]]) end print(property, '\t', content, '\t', match .. "|") end
