Use this http://www.cflib.org/udf/stripHTML
Alex On 16 November 2011 22:25, Jason King <[email protected]> wrote: > Hi Matthew... > > The string isn't necessarily all html. This is for a messaging app, and > people can include html elements for formatting. > > So the string is coming back via cfquery as variable #message_body# > > I want to parse this variable and remove any html formatting and if there > are links, remove all the ahref junk and just display the link value > itself.. so if I have this as the string > > <b>Hey Man!</b> Did you see this site? <a href="http://google.com"> > google.com</a> > > I would get > > Hey Man! Did you see this site? http://google.com > > > > On Wed, Nov 16, 2011 at 4:18 PM, Matthew Woodward > <[email protected]>wrote: > >> You get the HTML as an object first, then you can pull what you want from >> it. >> >> If you want to parse it as a string, just use CFHTTP. >> >> >> On Wed, Nov 16, 2011 at 2:04 PM, Jason King <[email protected]>wrote: >> >>> doc = html( FileRead("http://www.openbd.org/") >>> >>> Is the function pulling the html serviced by openbd.org and parsing it? >>> >>> I just want to parse a string, not an entire html document. Or, is it >>> getting the 'string' by 'fileread' so what's captured by fileread IS A >>> STRING of html characters, not any different than the string I'm providing? >>> >>> >>> On Wed, Nov 16, 2011 at 4:01 PM, Jason King <[email protected]>wrote: >>> >>>> I'm looking at it now.. >>>> >>>> do i have to use CFSCRIPT? >>>> >>>> >>>> On Wed, Nov 16, 2011 at 4:00 PM, Alex Skinner <[email protected]> wrote: >>>> >>>>> Did you have a look at the example docs I sent >>>>> >>>>> So the example code on the manual page would be pretty close ? >>>>> >>>>> <cfscript> >>>>> doc = html( FileRead("http://www.openbd.org/") ); >>>>> >>>>> allLinks = doc.select("a[href]"); >>>>> for ( x = 1; x <= ArrayLen(allLinks); x++ ){ >>>>> WriteOutput("<li>" & allLinks[x].attr("href") & " / " & >>>>> allLinks[x].text() & "</li>" ); >>>>> } >>>>> </cfscript> >>>>> >>>>> >>>>> Or the example on jsoup ? >>>>> >>>>> http://jsoup.org/cookbook/extracting-data/attributes-text-html >>>>> >>>>> Alex >>>>> >>>>> >>>>> >>>>> On 16 November 2011 21:56, Jason King <[email protected]> wrote: >>>>> >>>>>> ahh.. i never really work with J-Query >>>>>> >>>>>> How would I use it to get 'http://google.com' out of the link ref >>>>>> below? >>>>>> >>>>>> <a href="http://google.com"></a> >>>>>> >>>>>> Assume >>>>>> >>>>>> <CFSET var = '<a href="http://google.com"></a>'> >>>>>> >>>>>> How would I apply html() to 'var' to strip that out? >>>>>> >>>>>> >>>>>> >>>>>> On Wed, Nov 16, 2011 at 3:48 PM, Alex Skinner <[email protected]>wrote: >>>>>> >>>>>>> Now you can do JQuery-like selectors on it >>>>>>> >>>>>>> You've just been given a document object >>>>>>> >>>>>>> http://www.openbluedragon.org/manual/?/function/html >>>>>>> >>>>>>> http://jsoup.org/ >>>>>>> >>>>>>> For some samples >>>>>>> >>>>>>> Alex >>>>>>> >>>>>>> On 16 November 2011 21:44, Jason King <[email protected]>wrote: >>>>>>> >>>>>>>> Upgraded.... >>>>>>>> >>>>>>>> I have a string called 'body' and I'm applying it to the function. >>>>>>>> >>>>>>>> <cfset demovarA = "#html(body)#"> >>>>>>>> >>>>>>>> What's going on here? debugging is giving me this entire array as >>>>>>>> the value of demovarA >>>>>>>> >>>>>>>> *object of org.jsoup.nodes.Document* >>>>>>>> Methods clone (returns org.jsoup.nodes.Node) >>>>>>>> >>>>>>>> clone (returns org.jsoup.nodes.Element) >>>>>>>> >>>>>>>> clone (returns org.jsoup.nodes.Document) >>>>>>>> clone (returns java.lang.Object) >>>>>>>> head (returns org.jsoup.nodes.Element) >>>>>>>> body (returns org.jsoup.nodes.Element) >>>>>>>> text (returns org.jsoup.nodes.Element) >>>>>>>> nodeName (returns java.lang.String) >>>>>>>> createElement (returns org.jsoup.nodes.Element) >>>>>>>> normalise (returns org.jsoup.nodes.Document) >>>>>>>> title (returns void) >>>>>>>> title (returns java.lang.String) >>>>>>>> createShell (returns org.jsoup.nodes.Document) >>>>>>>> quirksMode (returns org.jsoup.nodes.Document) >>>>>>>> quirksMode (returns org.jsoup.nodes.Document$QuirksMode) >>>>>>>> outerHtml (returns java.lang.String) >>>>>>>> outputSettings (returns org.jsoup.nodes.Document$OutputSettings) >>>>>>>> parent (returns org.jsoup.nodes.Element) >>>>>>>> parent (returns org.jsoup.nodes.Node) >>>>>>>> addClass (returns org.jsoup.nodes.Element) >>>>>>>> equals (returns boolean) >>>>>>>> toString (returns java.lang.String) >>>>>>>> append (returns org.jsoup.nodes.Element) >>>>>>>> hashCode (returns int) >>>>>>>> wrap (returns org.jsoup.nodes.Node) >>>>>>>> wrap (returns org.jsoup.nodes.Element) >>>>>>>> empty (returns org.jsoup.nodes.Element) >>>>>>>> val (returns java.lang.String) >>>>>>>> val (returns org.jsoup.nodes.Element) >>>>>>>> after (returns org.jsoup.nodes.Node) >>>>>>>> after (returns org.jsoup.nodes.Node) >>>>>>>> after (returns org.jsoup.nodes.Element) >>>>>>>> after (returns org.jsoup.nodes.Element) >>>>>>>> before (returns org.jsoup.nodes.Element) >>>>>>>> before (returns org.jsoup.nodes.Node) >>>>>>>> before (returns org.jsoup.nodes.Element) >>>>>>>> before (returns org.jsoup.nodes.Node) >>>>>>>> id (returns java.lang.String) >>>>>>>> attr (returns org.jsoup.nodes.Element) >>>>>>>> attr (returns org.jsoup.nodes.Node) >>>>>>>> prepend (returns org.jsoup.nodes.Element) >>>>>>>> children (returns org.jsoup.select.Elements) >>>>>>>> className (returns java.lang.String) >>>>>>>> text (returns java.lang.String) >>>>>>>> data (returns java.lang.String) >>>>>>>> child (returns org.jsoup.nodes.Element) >>>>>>>> appendChild (returns org.jsoup.nodes.Element) >>>>>>>> select (returns org.jsoup.select.Elements) >>>>>>>> html (returns java.lang.String) >>>>>>>> html (returns org.jsoup.nodes.Element) >>>>>>>> getElementById (returns org.jsoup.nodes.Element) >>>>>>>> tagName (returns org.jsoup.nodes.Element) >>>>>>>> tagName (returns java.lang.String) >>>>>>>> tag (returns org.jsoup.parser.Tag) >>>>>>>> dataset (returns java.util.Map) >>>>>>>> getAllElements (returns org.jsoup.select.Elements) >>>>>>>> classNames (returns org.jsoup.nodes.Element) >>>>>>>> classNames (returns java.util.Set) >>>>>>>> isBlock (returns boolean) >>>>>>>> parents (returns org.jsoup.select.Elements) >>>>>>>> prependChild (returns org.jsoup.nodes.Element) >>>>>>>> appendElement (returns org.jsoup.nodes.Element) >>>>>>>> prependElement (returns org.jsoup.nodes.Element) >>>>>>>> appendText (returns org.jsoup.nodes.Element) >>>>>>>> prependText (returns org.jsoup.nodes.Element) >>>>>>>> siblingElements (returns org.jsoup.select.Elements) >>>>>>>> nextElementSibling (returns org.jsoup.nodes.Element) >>>>>>>> previousElementSibling (returns org.jsoup.nodes.Element) >>>>>>>> firstElementSibling (returns org.jsoup.nodes.Element) >>>>>>>> elementSiblingIndex (returns java.lang.Integer) >>>>>>>> lastElementSibling (returns org.jsoup.nodes.Element) >>>>>>>> getElementsByTag (returns org.jsoup.select.Elements) >>>>>>>> getElementsByClass (returns org.jsoup.select.Elements) >>>>>>>> getElementsByAttribute (returns org.jsoup.select.Elements) >>>>>>>> getElementsByAttributeStarting (returns org.jsoup.select.Elements) >>>>>>>> getElementsByAttributeValue (returns org.jsoup.select.Elements) >>>>>>>> getElementsByAttributeValueNot (returns org.jsoup.select.Elements) >>>>>>>> getElementsByAttributeValueStarting (returns >>>>>>>> org.jsoup.select.Elements) >>>>>>>> getElementsByAttributeValueEnding (returns >>>>>>>> org.jsoup.select.Elements) >>>>>>>> getElementsByAttributeValueContaining (returns >>>>>>>> org.jsoup.select.Elements) >>>>>>>> getElementsByAttributeValueMatching (returns >>>>>>>> org.jsoup.select.Elements) >>>>>>>> getElementsByAttributeValueMatching (returns >>>>>>>> org.jsoup.select.Elements) >>>>>>>> getElementsByIndexLessThan (returns org.jsoup.select.Elements) >>>>>>>> getElementsByIndexGreaterThan (returns org.jsoup.select.Elements) >>>>>>>> getElementsByIndexEquals (returns org.jsoup.select.Elements) >>>>>>>> getElementsContainingText (returns org.jsoup.select.Elements) >>>>>>>> getElementsContainingOwnText (returns org.jsoup.select.Elements) >>>>>>>> getElementsMatchingText (returns org.jsoup.select.Elements) >>>>>>>> getElementsMatchingText (returns org.jsoup.select.Elements) >>>>>>>> getElementsMatchingOwnText (returns org.jsoup.select.Elements) >>>>>>>> getElementsMatchingOwnText (returns org.jsoup.select.Elements) >>>>>>>> ownText (returns java.lang.String) >>>>>>>> hasText (returns boolean) >>>>>>>> hasClass (returns boolean) >>>>>>>> removeClass (returns org.jsoup.nodes.Element) >>>>>>>> toggleClass (returns org.jsoup.nodes.Element) >>>>>>>> remove (returns void) >>>>>>>> replaceWith (returns void) >>>>>>>> attr (returns java.lang.String) >>>>>>>> childNode (returns org.jsoup.nodes.Node) >>>>>>>> attributes (returns org.jsoup.nodes.Attributes) >>>>>>>> nextSibling (returns org.jsoup.nodes.Node) >>>>>>>> previousSibling (returns org.jsoup.nodes.Node) >>>>>>>> ownerDocument (returns org.jsoup.nodes.Document) >>>>>>>> unwrap (returns org.jsoup.nodes.Node) >>>>>>>> baseUri (returns java.lang.String) >>>>>>>> setBaseUri (returns void) >>>>>>>> childNodes (returns java.util.List) >>>>>>>> absUrl (returns java.lang.String) >>>>>>>> siblingIndex (returns int) >>>>>>>> hasAttr (returns boolean) >>>>>>>> removeAttr (returns org.jsoup.nodes.Node) >>>>>>>> siblingNodes (returns java.util.List) >>>>>>>> wait (returns void) >>>>>>>> wait (returns void) >>>>>>>> wait (returns void) >>>>>>>> getClass (returns java.lang.Class) >>>>>>>> notify (returns void) >>>>>>>> notifyAll (returns void) >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> official tag/function reference: http://openbd.org/manual/ >>>>>>>> mailing list - http://groups.google.com/group/openbd?hl=en >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Alex Skinner >>>>>>> Managing Director >>>>>>> Pixl8 Interactive >>>>>>> >>>>>>> Tel: +448452600726 >>>>>>> Email: [email protected] >>>>>>> Web: pixl8.co.uk >>>>>>> >>>>>>> -- >>>>>>> official tag/function reference: http://openbd.org/manual/ >>>>>>> mailing list - http://groups.google.com/group/openbd?hl=en >>>>>>> >>>>>> >>>>>> -- >>>>>> official tag/function reference: http://openbd.org/manual/ >>>>>> mailing list - http://groups.google.com/group/openbd?hl=en >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Alex Skinner >>>>> Managing Director >>>>> Pixl8 Interactive >>>>> >>>>> Tel: +448452600726 >>>>> Email: [email protected] >>>>> Web: pixl8.co.uk >>>>> >>>>> -- >>>>> official tag/function reference: http://openbd.org/manual/ >>>>> mailing list - http://groups.google.com/group/openbd?hl=en >>>>> >>>> >>>> >>> -- >>> official tag/function reference: http://openbd.org/manual/ >>> mailing list - http://groups.google.com/group/openbd?hl=en >>> >> >> >> >> -- >> Matthew Woodward >> [email protected] >> http://blog.mattwoodward.com >> identi.ca / Twitter: @mpwoodward >> >> Please do not send me proprietary file formats such as Word, PowerPoint, >> etc. as attachments. >> http://www.gnu.org/philosophy/no-word-attachments.html >> >> -- >> official tag/function reference: http://openbd.org/manual/ >> mailing list - http://groups.google.com/group/openbd?hl=en >> > > -- > official tag/function reference: http://openbd.org/manual/ > mailing list - http://groups.google.com/group/openbd?hl=en > -- Alex Skinner Managing Director Pixl8 Interactive Tel: +448452600726 Email: [email protected] Web: pixl8.co.uk -- official tag/function reference: http://openbd.org/manual/ mailing list - http://groups.google.com/group/openbd?hl=en
