Subj : Re: subset function for string in c++ To : comp.programming From : Randy Howard Date : Wed Sep 28 2005 11:51 pm August Karlstrom wrote (in article ): > Randy Howard wrote: >> August Karlstrom wrote >>> puzzlecracker wrote: >>> >>>> basically, I need to find out wether charecters in string a are subset >>>> of string b.. >>>> >>>> >>>> example >>>> >>>> >>>> a: rx b:rwx >>>> that shall return true. >>>> >>> >>> As this group is language independent i chose to write an implementation >>> in Oberon: >>> >>> PROCEDURE Subset(a, b: ARRAY OF CHAR): BOOLEAN; >>> VAR j, k: LONGINT; >>> BEGIN >>> j := 0; >>> WHILE a[j] # 0X DO >>> k := 0; >>> WHILE (b[k] # 0X) & (b[k] # a[j]) DO INC(k) END; >>> IF b[k] = 0X THEN RETURN FALSE END; >>> INC(j) >>> END; >>> RETURN TRUE >>> END Subset; >>> >>> >> >> >> Wow. Ben's version sure seems a lot clearer. :-) > > Since the original poster wrote to comp.programming I assumed he/she was > interested in an algorithm. I was making a comment on the wordiness of Oberon, not on what language the solution was in, and it was mostly tongue in cheek. I would expect a modern language to have a bit more in the way of standard string support and not have to roll it from scratch, or is there a more direct way of doing it with Oberon builtins? > Otherwise comp.lang.c++ is be the appropriate group to consult. Looked pretty much like conventional C to me. strspn conforms to ISO C90 according to man pages on this box. :-) >> I'm having pascal flashbacks, make it stop. > > The similarities between Pascal and Oberon is mostly at the syntactic > level. Precisely my point. :-) -- Randy Howard (2reply remove FOOBAR) .