|
|
1.1 root 1: # STRUTIL(2)
2: #
3: # String utilities
4: #
5: # Ralph E. Griswold
6: #
7: # Last modified 7/10/83
8: #
9:
10: # compress characters
11: #
12: procedure compress(s,c)
13: local i
14: i := 0
15: while i := upto(c,s,i + 1) do
16: s := s[1:i + 1] || s[many(s[i],s,i):0]
17: return s
18: end
19:
20: # delete characters
21: #
22: procedure delete(s,c)
23: local i
24: while i := upto(c,s) do
25: s[i:many(c,s,i)] := ""
26: return s
27: end
28:
29: # rotate string
30: #
31: procedure rotate(s,i)
32: /i := 1
33: if i <= 0 then i +:= *s
34: i %:= *s
35: return s[i + 1:0] || s[1:i + 1]
36: end
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.