Parse HTML ASCII

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • McHenry

    #1

    Parse HTML ASCII

    When parsing HTML is it possible to have all the ASCII codes converted to
    their real values first so that I do not need to search for them to exclude
    them.

    For example the following is retrieved as a price however it would be easier
    to extract using a regex if the code was first converted to a dollar sign:

    <h3>

    &#36;249,000

    </h3>

    Thanks in advance...


  • Ruben van Engelenburg

    #2
    Re: Parse HTML ASCII

    McHenry wrote:[color=blue]
    > For example the following is retrieved as a price however it would be easier
    > to extract using a regex if the code was first converted to a dollar sign:
    >
    > <h3>
    >
    > &#36;249,000
    >
    > </h3>[/color]


    Hi McHenry,

    You're probably looking for html_entity_dec ode():

    <?php
    echo html_entity_dec ode('<h3>&#36;2 49,000</h3>');
    ?>

    HTH.
    Ruben.

    --

    Comment

    • McHenry

      #3
      Re: Parse HTML ASCII


      "Ruben van Engelenburg" <ruben@NOSPAM.n l> wrote in message
      news:44a28738$0 $31643$e4fe514c @news.xs4all.nl ...[color=blue]
      > McHenry wrote:[color=green]
      >> For example the following is retrieved as a price however it would be
      >> easier to extract using a regex if the code was first converted to a
      >> dollar sign:
      >>
      >> <h3>
      >>
      >> &#36;249,000
      >>
      >> </h3>[/color]
      >
      >
      > Hi McHenry,
      >
      > You're probably looking for html_entity_dec ode():
      >
      > <?php
      > echo html_entity_dec ode('<h3>&#36;2 49,000</h3>');
      > ?>
      >
      > HTH.
      > Ruben.
      >
      > --
      > http://www.phpforums.nl[/color]

      When I run the example code above it outputs the HTML as it appears above
      and doesn't convert the ascii codes ?


      Comment

      • IchBin

        #4
        Re: Parse HTML ASCII

        McHenry wrote:[color=blue]
        > "Ruben van Engelenburg" <ruben@NOSPAM.n l> wrote in message
        > news:44a28738$0 $31643$e4fe514c @news.xs4all.nl ...[color=green]
        >> McHenry wrote:[color=darkred]
        >>> For example the following is retrieved as a price however it would be
        >>> easier to extract using a regex if the code was first converted to a
        >>> dollar sign:
        >>>
        >>> <h3>
        >>>
        >>> &#36;249,000
        >>>
        >>> </h3>[/color]
        >>
        >> Hi McHenry,
        >>
        >> You're probably looking for html_entity_dec ode():
        >>
        >> <?php
        >> echo html_entity_dec ode('<h3>&#36;2 49,000</h3>');
        >> ?>
        >>
        >> HTH.
        >> Ruben.
        >>
        >> --
        >> http://www.phpforums.nl[/color]
        >
        > When I run the example code above it outputs the HTML as it appears above
        > and doesn't convert the ascii codes ?
        >
        >[/color]

        when I run it I get $249,000

        <?php
        echo html_entity_dec ode('<h3>&#36;2 49,000</h3>');
        ?>

        I am using PHP Designer and PHP version 5.1.4

        Thanks in Advance...
        IchBin, Pocono Lake, Pa, USA http://weconsultants.phpnet.us
        _______________ _______________ _______________ _______________ ______________

        'If there is one, Knowledge is the "Fountain of Youth"'
        -William E. Taylor, Regular Guy (1952-)

        Comment

        • McHenry

          #5
          Re: Parse HTML ASCII


          "IchBin" <weconsul@ptd.n et> wrote in message
          news:iMKcnZphKs 4J6T7ZUSdV9g@pt d.net...[color=blue]
          > McHenry wrote:[color=green]
          >> "Ruben van Engelenburg" <ruben@NOSPAM.n l> wrote in message
          >> news:44a28738$0 $31643$e4fe514c @news.xs4all.nl ...[color=darkred]
          >>> McHenry wrote:
          >>>> For example the following is retrieved as a price however it would be
          >>>> easier to extract using a regex if the code was first converted to a
          >>>> dollar sign:
          >>>>
          >>>> <h3>
          >>>>
          >>>> &#36;249,000
          >>>>
          >>>> </h3>
          >>>
          >>> Hi McHenry,
          >>>
          >>> You're probably looking for html_entity_dec ode():
          >>>
          >>> <?php
          >>> echo html_entity_dec ode('<h3>&#36;2 49,000</h3>');
          >>> ?>
          >>>
          >>> HTH.
          >>> Ruben.
          >>>
          >>> --
          >>> http://www.phpforums.nl[/color]
          >>
          >> When I run the example code above it outputs the HTML as it appears above
          >> and doesn't convert the ascii codes ?[/color]
          >
          > when I run it I get $249,000[/color]

          Output displayed in the browser ? Maybe the browser is converting the ASCII
          however it is still being fed the raw codes by PHP

          If you output the function to a txt file you'll find it's still the raw
          codes...
          [color=blue]
          >
          > <?php
          > echo html_entity_dec ode('<h3>&#36;2 49,000</h3>');
          > ?>
          >
          > I am using PHP Designer and PHP version 5.1.4
          >
          > Thanks in Advance...
          > IchBin, Pocono Lake, Pa, USA http://weconsultants.phpnet.us
          > _______________ _______________ _______________ _______________ ______________
          >
          > 'If there is one, Knowledge is the "Fountain of Youth"'
          > -William E. Taylor, Regular Guy (1952-)[/color]


          Comment

          • Kimmo Laine

            #6
            Re: Parse HTML ASCII

            "McHenry" <mchenry@mchenr y.com> wrote in message
            news:44a377a2$0 $12236$5a62ac22 @per-qv1-newsreader-01.iinet.net.au ...[color=blue]
            >
            > "IchBin" <weconsul@ptd.n et> wrote in message
            > news:iMKcnZphKs 4J6T7ZUSdV9g@pt d.net...[color=green]
            >> McHenry wrote:[color=darkred]
            >>> "Ruben van Engelenburg" <ruben@NOSPAM.n l> wrote in message
            >>> news:44a28738$0 $31643$e4fe514c @news.xs4all.nl ...
            >>>> McHenry wrote:
            >>>>> For example the following is retrieved as a price however it would be
            >>>>> easier to extract using a regex if the code was first converted to a
            >>>>> dollar sign:
            >>>>>
            >>>>> <h3>
            >>>>>
            >>>>> &#36;249,000
            >>>>>
            >>>>> </h3>
            >>>>
            >>>> Hi McHenry,
            >>>>
            >>>> You're probably looking for html_entity_dec ode():
            >>>>
            >>>> <?php
            >>>> echo html_entity_dec ode('<h3>&#36;2 49,000</h3>');
            >>>> ?>
            >>>>
            >>>> HTH.
            >>>> Ruben.
            >>>>
            >>>> --
            >>>> http://www.phpforums.nl
            >>>
            >>> When I run the example code above it outputs the HTML as it appears
            >>> above and doesn't convert the ascii codes ?[/color]
            >>
            >> when I run it I get $249,000[/color]
            >
            > Output displayed in the browser ? Maybe the browser is converting the
            > ASCII however it is still being fed the raw codes by PHP
            >
            > If you output the function to a txt file you'll find it's still the raw
            > codes...
            >[/color]

            Read The Fine Manual :)

            Convert HTML entities to their corresponding characters


            On that page, there's an example code:
            function unhtmlentities( $string)
            {
            // replace numeric entities
            $string = preg_replace('~ &#x([0-9a-f]+);~ei', 'chr(hexdec("\\ 1"))',
            $string);
            $string = preg_replace('~ &#([0-9]+);~e', 'chr(\\1)', $string);
            // replace literal entities
            $trans_tbl = get_html_transl ation_table(HTM L_ENTITIES);
            $trans_tbl = array_flip($tra ns_tbl);
            return strtr($string, $trans_tbl);
            }

            Try and see if it works.

            --
            "ohjelmoija on organismi joka muuttaa kofeiinia koodiksi" -lpk
            spam@outolempi. net | Gedoon-S @ IRCnet | rot13(xvzzb@bhg byrzcv.arg)


            Comment

            • Ruben van Engelenburg

              #7
              Re: Parse HTML ASCII

              McHenry wrote:
              [color=blue]
              > Output displayed in the browser ? Maybe the browser is converting the ASCII
              > however it is still being fed the raw codes by PHP
              >
              > If you output the function to a txt file you'll find it's still the raw
              > codes...[/color]

              What exactly do you mean by "raw codes"? And also what tool are you
              using to view the stored file?

              I'd try storing the output utf-8 encoded, either by using something like:

              utf8_encode(htm l_entity_decode ('<h3>&#36;249, 000</h3>'));

              or just use the third parameter to html_entity_dec ode being the output
              encoding.

              Then store that to a text file and open it in a unicode aware editor.

              HTH.
              Ruben.
              --

              Comment

              Working...