Avatar billede kjoller Nybegynder
22. juni 2001 - 09:22 Der er 8 kommentarer og
2 løsninger

Tæl bestemt ord og erstat

Er der nogen derude som kan fortælle mig, om der er muligt at tage en tekst streng og tælle alle de gange \"det\" er i sætningen, og derefter erstatte det med et tal.

eks. \"Det spiller det her ja det gør\" bliver til resultat = 3 og \"1 spiller 2 her ja 3 gør\"
Avatar billede pellelil Nybegynder
22. juni 2001 - 09:29 #1

Procedure Erstat(SubStr, Str: String);
var
  C, P: Integer
begin
  C := 0;
  SubStr := AnsiUpperCase(SubStr);
  Str := AnsiUpperCase(Str);
  P := Pos(SubStr, Str);
  while P > 0 do
  begin
    Inc(C);
    Delete(Str, P, Length(SubStr);
    Insert(IntToStr(C), Str, P);
    P := Pos(SubStr, Str);
  end;
end;
Avatar billede martinlind Nybegynder
22. juni 2001 - 09:34 #2
Dette er nok det smarteste, fra Online hjælpen :

function StringReplace(const S, OldPattern, NewPattern: string; Flags: TReplaceFlags): string;

Description

StringReplace replaces occurrences of the substring specified by OldPattern with the substring specified by NewPattern. StringReplace assumes that the source string, specified by S, may contain Multibyte characters.

If the Flags parameter does not include rfReplaceAll, StringReplace only replaces the first occurrence of OldPattern in S. Otherwise, all instances of OldPattern are replaced by NewPattern.

If the Flags parameter includes rfIgnoreCase, The comparison operation is case insensitive.
Avatar billede pellelil Nybegynder
22. juni 2001 - 09:36 #3
Jeg prøver lige igen:
<SNIP>
 
Function Erstat(SubStr, Str: String): String;
var
  C, P: Integer
begin
  Result := Str;
  C := 0;
  SubStr := AnsiUpperCase(SubStr);
  Str := AnsiUpperCase(Str);
  P := Pos(SubStr, Str);
  while P > 0 do
  begin
    Inc(C);
    Delete(Str, P, Length(SubStr);
    Delete(Result, P, Length(SubStr);
    Insert(IntToStr(C), Str, P);
    Insert(IntToStr(C), Result, P);
    P := Pos(SubStr, Str);
  end;
end;
</SNIP>
Avatar billede martinlind Nybegynder
22. juni 2001 - 09:38 #4
pellelil>> kan du godt lide at Opfinde ??

Delphi har en function til formålet.
Avatar billede kjoller Nybegynder
22. juni 2001 - 09:40 #5
Shit jeg har oprettet spørgsmålet forkert, det skulle være under asp, sorry, I få begge point for ulejligheden :o/
Avatar billede pellelil Nybegynder
22. juni 2001 - 09:41 #6
martinlind> Nej jeg bryder mig ikke om at \"opfinde\", men kjoller eftersprugte en rutine der kunne erstatte en given \"String\" med et fortløbende nummer, og den StringReplace du referrere til erstatter \"blot\" en String med en anden.
Avatar billede pellelil Nybegynder
22. juni 2001 - 09:44 #7
Martinlind> Skulle jeg selv havde brug for en lignende routine havde jeg nok (alt efter omstændighederne) taget min \"Opfinder-kasket\" på og brugt en Boyer-Moore routine i stedet for POS da der er himmel-og-hav til forskel på deres performance  :-)
Avatar billede martinlind Nybegynder
22. juni 2001 - 09:50 #8
pellelil >> havde overset det med tallet
Avatar billede pellelil Nybegynder
22. juni 2001 - 09:54 #9
Det er så\'n det går når musikken spiller - jeg tror vi alle har svarret i Vest når der blev spurgt i Øst (eller fordi \"folk\" ikke var gode nok til at stille deres spørgsmål, så \"det lød\" som om de spurgte i Øst).
Avatar billede pellelil Nybegynder
22. juni 2001 - 09:55 #10
PS: Det minder mig om min tidligere stilling hvor jeg bl.a. skulle supportere brugere i Litauen. Der \"legede\" vi ofte \"gæt et spørgsmål\" det var mere reglen end undtagelsen at det store problem var ikke at hjælpe dem, men det var at finde ud af hvad det var de skulle ha\' hjælp til  :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Specialister til Netværksoperations til Forsvarets nye Digitale Backbone

Jyske Bank

AI-udvikler

Riskpoint A/S (Riskpoint Solutions Limited)

Senior Developer