Update all new Tasks
This commit is contained in:
parent
00a190b0a6
commit
91df62d461
5697 changed files with 93386 additions and 804 deletions
18
Task/String-matching/TXR/string-matching-1.txr
Normal file
18
Task/String-matching/TXR/string-matching-1.txr
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
@(do
|
||||
(tree-case *args*
|
||||
((big small)
|
||||
(cond
|
||||
((< (length big) (length small))
|
||||
(put-line `@big is shorter than @small`))
|
||||
((str= big small)
|
||||
(put-line `@big and @small are equal`))
|
||||
((match-str big small)
|
||||
(put-line `@small is a prefix of @big`))
|
||||
((match-str big small -1)
|
||||
(put-line `@small is a suffix of @big`))
|
||||
(t (let ((pos (search-str big small)))
|
||||
(if pos
|
||||
(put-line `@small occurs in @big at position @pos`)
|
||||
(put-line `@small does not occur in @big`))))))
|
||||
(otherwise
|
||||
(put-line `usage: @(ldiff *full-args* *args*) <bigstring> <smallstring>`))))
|
||||
26
Task/String-matching/TXR/string-matching-2.txr
Normal file
26
Task/String-matching/TXR/string-matching-2.txr
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
@line
|
||||
@(cases)
|
||||
@ line
|
||||
@ (output)
|
||||
second line is the same as first line
|
||||
@ (end)
|
||||
@(or)
|
||||
@ (skip)@line
|
||||
@ (output)
|
||||
first line is a suffix of the second line
|
||||
@ (end)
|
||||
@(or)
|
||||
@ line@(skip)
|
||||
@ (output)
|
||||
first line is a suffix of the second line
|
||||
@ (end)
|
||||
@(or)
|
||||
@ prefix@line@(skip)
|
||||
@ (output)
|
||||
first line is embedded in the second line at position @(length prefix)
|
||||
@ (end)
|
||||
@(or)
|
||||
@ (output)
|
||||
first line is not found in the second line
|
||||
@ (end)
|
||||
@(end)
|
||||
Loading…
Add table
Add a link
Reference in a new issue