Strip control codes and extended characters from a string: Difference between revisions
Content added Content deleted
Puppydrum64 (talk | contribs) m (→{{header|8086 Assembly}}: added a version that only strips control codes) |
(Added solution for Action!) |
||
Line 110: | Line 110: | ||
abcdefÉ |
abcdefÉ |
||
abcdef |
abcdef |
||
</pre> |
|||
=={{header|Action!}}== |
|||
<lang Action!>BYTE FUNC IsAscii(CHAR c) |
|||
IF c<32 OR c>124 OR c=96 OR c=123 THEN |
|||
RETURN (0) |
|||
FI |
|||
RETURN (1) |
|||
PROC Strip(CHAR ARRAY src,dst) |
|||
CHAR c |
|||
BYTE i |
|||
dst(0)=0 |
|||
FOR i=1 TO src(0) |
|||
DO |
|||
c=src(i) |
|||
IF IsAscii(c) THEN |
|||
dst(0)==+1 |
|||
dst(dst(0))=c |
|||
FI |
|||
OD |
|||
RETURN |
|||
PROC Main() |
|||
CHAR ARRAY |
|||
src(20)=[16 0 16 96 123 'a 'b 'c 131 27 30 '1 '2 '3 4 1 20], |
|||
dst(20) |
|||
PrintF("Original string: ""%S""%E",src) |
|||
Strip(src,dst) |
|||
PrintF("Stripped string: ""%S""%E",dst) |
|||
RETURN</lang> |
|||
{{out}} |
|||
[https://gitlab.com/amarok8bit/action-rosetta-code/-/raw/master/images/Strip_control_codes_and_extended_characters_from_a_string.png Screenshot from Atari 8-bit computer] |
|||
<pre> |
|||
Original string: "♥♣♦♠abc┘←123┤├●" |
|||
Stripped string: "abc123" |
|||
</pre> |
</pre> |
||