What is the correct function or cast to compare an unprintable ASCII character value to a string slice
monarch_dodra
monarchdodra at gmail.com
Fri Mar 28 08:53:35 PDT 2014
On Friday, 28 March 2014 at 15:33:32 UTC, Gary Miller wrote:
> If I need to examine a byte in string for a specific ASCII
> value like
>
> string MyString;
>
> MyString = "Hello World"
>
> and I want to check a position in the string for a certain
> unprintable ASCII value like the ASCII Block 219 what is the
> recommended method for doing so
>
> if (MyString[0..1])== ???(219)) writeln("ASCII Block found")
>
> I know there's and easy lib function or cast somewhere but
> everywhere I've looked it's not jumping out at me.
219 is not an "ASCII Block". You can just do a search for 219 in
your *byte* stream:
auto b = ("hello" ~ cast(char)219 ~
"world").representation.canFind(219);
The "representation" part *very* is important: Without it, you
string will be interpreted as unicode, and there is *not*
actually a 219 codepoint in there.
More information about the Digitalmars-d-learn
mailing list