<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: ABAP regex hex implementation in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/abap-regex-hex-implementation/m-p/9242886#M1719890</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Roland,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please check the below link for reference. You might get your answer &lt;SPAN __jive_emoticon_name="happy" __jive_macro_name="emoticon" class="jive_macro jive_emote" src="https://community.sap.com/1151/images/emoticons/happy.gif"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/abapdocu_70/en/ABENREGEX_SYNTAX_SPECIALS.htm" title="http://help.sap.com/abapdocu_70/en/ABENREGEX_SYNTAX_SPECIALS.htm"&gt;http://help.sap.com/abapdocu_70/en/ABENREGEX_SYNTAX_SPECIALS.htm&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 01 Feb 2013 18:04:57 GMT</pubDate>
    <dc:creator>former_member491621</dc:creator>
    <dc:date>2013-02-01T18:04:57Z</dc:date>
    <item>
      <title>ABAP regex hex implementation</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/abap-regex-hex-implementation/m-p/9242885#M1719889</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;for data validation, we use regex rules. But I have a question to the implementation in ABAP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;To validate a string is ASCII, regex allows to provide the full charset or just the hex-value from-to. But ABAP does not threat this as expected. See the code below. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;&lt;P&gt;&lt;SPAN class="L0S52"&gt;DATA&lt;SPAN class="L0S55"&gt;: &lt;/SPAN&gt;lv_str &lt;SPAN class="L0S52"&gt;TYPE &lt;/SPAN&gt;string &lt;SPAN class="L0S52"&gt;VALUE&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S33"&gt;' !"#$%&amp;amp;'&lt;/SPAN&gt;&lt;SPAN class="L0S33"&gt;''&lt;/SPAN&gt;&lt;SPAN class="L0S33"&gt;'()*+,-./0-9:;&amp;lt;=&amp;gt;?@ABCDEFGHIJKLMNOPQRZTUVWXYZ0123456789[|]^_`a-z]{|}~'&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lv_regx_str &lt;SPAN class="L0S52"&gt;TYPE &lt;/SPAN&gt;string &lt;SPAN class="L0S52"&gt;VALUE&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S33"&gt;'[^\ \!\"\#\$\%\&amp;amp;\'&lt;/SPAN&gt;&lt;SPAN class="L0S33"&gt;''&lt;/SPAN&gt;&lt;SPAN class="L0S33"&gt;'\(\)\*\+\,\-\.\/0-9\:\;\&amp;lt;\=\&amp;gt;\?\@\A-Z\\\[\|\]\^\_\`\a-z\]\{\|\}\~]'&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lv_regx_hex &lt;SPAN class="L0S52"&gt;TYPE &lt;/SPAN&gt;string &lt;SPAN class="L0S52"&gt;VALUE&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S33"&gt;'[^\x20-\x7F]'&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;,&lt;/SPAN&gt;&lt;BR /&gt; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lv_str_str &lt;SPAN class="L0S52"&gt;TYPE &lt;/SPAN&gt;string&lt;SPAN class="L0S55"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lv_str_hex &lt;SPAN class="L0S52"&gt;TYPE &lt;/SPAN&gt;string&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;BR /&gt; &lt;BR /&gt; lv_str_str &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;lv_str&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;BR /&gt; lv_str_hex &lt;SPAN class="L0S55"&gt;= &lt;/SPAN&gt;lv_str&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;BR /&gt; &lt;BR /&gt; &lt;SPAN class="L0S52"&gt;REPLACE &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;ALL &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;OCCURRENCES &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;OF &lt;/SPAN&gt;REGEX lv_regx_str &lt;SPAN class="L0S52"&gt;IN &lt;/SPAN&gt;lv_str_str &lt;SPAN class="L0S52"&gt;WITH &lt;/SPAN&gt;&lt;SPAN class="L0S33"&gt;'?'&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;BR /&gt; &lt;SPAN class="L0S52"&gt;REPLACE &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;ALL &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;OCCURRENCES &lt;/SPAN&gt;&lt;SPAN class="L0S52"&gt;OF &lt;/SPAN&gt;REGEX lv_regx_hex &lt;SPAN class="L0S52"&gt;IN &lt;/SPAN&gt;lv_str_hex &lt;SPAN class="L0S52"&gt;WITH &lt;/SPAN&gt;&lt;SPAN class="L0S33"&gt;'?'&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;BR /&gt; &lt;BR /&gt; &lt;SPAN class="L0S52"&gt;IF &lt;/SPAN&gt;lv_str_hex &lt;SPAN class="L0S52"&gt;NE &lt;/SPAN&gt;lv_str_str&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;WRITE&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;: &lt;/SPAN&gt;&lt;SPAN class="L0S33"&gt;'Hex:'&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;WRITE&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;: &lt;/SPAN&gt;lv_str_hex&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;WRITE &lt;/SPAN&gt;/&lt;SPAN class="L0S55"&gt;: &lt;/SPAN&gt;&lt;SPAN class="L0S33"&gt;'Str:'&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;SPAN class="L0S52"&gt;WRITE&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;:&amp;nbsp; &lt;/SPAN&gt;lv_str_str&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;BR /&gt; &lt;SPAN class="L0S52"&gt;ENDIF&lt;/SPAN&gt;&lt;SPAN class="L0S55"&gt;.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The output of this program is:&lt;/P&gt;&lt;P&gt;Hex: &lt;/P&gt;&lt;P&gt;?????????????????0?9:;&amp;lt;=&amp;gt;?@ABCDEFGHIJKLMNOPQRZTUVWXYZ0123456789[?]^_`a??]????&lt;/P&gt;&lt;P&gt;Str:&lt;/P&gt;&lt;P&gt;&amp;nbsp; !"#$%&amp;amp;''()*+,-./0-9:;&amp;lt;=&amp;gt;?@ABCDEFGHIJKLMNOPQRZTUVWXYZ0123456789[ ]^_`a-z]{ }~&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So the hex regex works in general: there is no exception and standard characters A-Z and 0-9 are untouched. But chars like !$%&amp;amp; are not accepted.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any ideas?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Roland&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 31 Jan 2013 16:22:42 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/abap-regex-hex-implementation/m-p/9242885#M1719889</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2013-01-31T16:22:42Z</dc:date>
    </item>
    <item>
      <title>Re: ABAP regex hex implementation</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/abap-regex-hex-implementation/m-p/9242886#M1719890</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Roland,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please check the below link for reference. You might get your answer &lt;SPAN __jive_emoticon_name="happy" __jive_macro_name="emoticon" class="jive_macro jive_emote" src="https://community.sap.com/1151/images/emoticons/happy.gif"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://help.sap.com/abapdocu_70/en/ABENREGEX_SYNTAX_SPECIALS.htm" title="http://help.sap.com/abapdocu_70/en/ABENREGEX_SYNTAX_SPECIALS.htm"&gt;http://help.sap.com/abapdocu_70/en/ABENREGEX_SYNTAX_SPECIALS.htm&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 01 Feb 2013 18:04:57 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/abap-regex-hex-implementation/m-p/9242886#M1719890</guid>
      <dc:creator>former_member491621</dc:creator>
      <dc:date>2013-02-01T18:04:57Z</dc:date>
    </item>
  </channel>
</rss>

