Searching for a string in a text buffer with a regular expression
    Shammah Chancellor 
    anonymous at coward.com
       
    Fri Dec  6 03:47:01 PST 2013
    
    
  
On 2013-12-06 08:53:04 +0000, maxpat78 said:
> While porting a simple Python script to D, I found the following problem.
> 
> I need to read in some thousand of little text files and search every 
> one for a match with a given regular expression.
> 
> Obviously, the program can't (and it should not) be certain about the 
> encoding of each input file.
> 
> I initially used read() casting it with a cast(char[]), but, at some 
> point, the regex engine crashed with an exception: it encountered an 
> UTF-8 character it couldn't automatically decode. This is right, since 
> char[] is not byte[].
> 
> Now I'm casting with a Latin1String, since I know this is the right 
> encoding for the input buffers: and it works fine, at last... but what 
> about if I'd need to treat a RAW (binary? unknown encoding?) buffer?
> 
> Is there a simple and elegant solution in D for such case?
> Python didn't gave such problems!
Why don't you follow one of the file reading examples?
readText is what you're looking for.
http://dlang.org/phobos/std_file.html#.readText
    
    
More information about the Digitalmars-d-learn
mailing list