* initial, unfinished implementation

git-svn-id: trunk@5508 -
This commit is contained in:
florian 2006-11-27 16:48:57 +00:00
parent 4ae36f609a
commit 9da91645d9
3 changed files with 1718 additions and 0 deletions

2
.gitattributes vendored
View File

@ -5415,6 +5415,7 @@ tests/bench/shootout/io/knucleotide-output.txt svneol=native#text/plain
tests/bench/shootout/io/moments.in -text
tests/bench/shootout/io/moments.out -text
tests/bench/shootout/io/recursive-output.txt svneol=native#text/plain
tests/bench/shootout/io/regexdna-input.txt -text svneol=unset#application/octet-stream
tests/bench/shootout/io/rev.out -text
tests/bench/shootout/io/revfile.in -text
tests/bench/shootout/io/revfile.out -text
@ -5465,6 +5466,7 @@ tests/bench/shootout/src/mandelbrot.pp svneol=native#text/plain
tests/bench/shootout/src/nsieve.pp svneol=native#text/plain
tests/bench/shootout/src/partialsums.pp svneol=native#text/plain
tests/bench/shootout/src/recursive.pp svneol=native#text/plain
tests/bench/shootout/src/regexdna.pp svneol=native#text/plain
tests/bench/shootout/src/simple_hash.pp svneol=native#text/plain
tests/bench/shootout/src/spectralnorm.pp svneol=native#text/plain
tests/bench/shootout/src/sumcol.pp svneol=native#text/plain

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,45 @@
{$mode objfpc}
{$H-}
uses
regexpr;
var
buffer : PChar;
buffer2 : ansistring;
seqlen : longint;
TextBuf: array[0..$FFF] of byte;
procedure Load;
var
len : longint;
buffersize, bufferptr: longint;
s : Shortstring;
begin
buffersize:=1024;
buffer:=getmem(buffersize);
bufferptr :=0;
while not eof do begin
readln(s);
len:=length(s);
if (bufferptr+len+1)>buffersize then begin
inc(buffersize,buffersize);
reallocmem(buffer,buffersize);
end;
move (s[1],buffer[bufferptr],len);
inc(bufferptr,len);
end;
buffer[bufferptr] := #0;
seqlen:=bufferptr;
writeln(seqlen);
end;
procedure ReplaceNewline;
begin
GenerateRegExprEngine('>.*\n|\n',[],RegExprEngine);
writeln(RegExprReplace(RegExprEngine,buffer,'',buffer2));
DestroyRegExprEngine(RegExprEngine);
end;
begin
SetTextBuf(input, TextBuf, sizeof(TextBuf));
Load;
end.