String matching: Difference between revisions
Content added Content deleted
m (Category:Simple, {{out}}) |
|||
Line 1,557: | Line 1,557: | ||
that other cloud looks like a llama" "cloud" ;; |
that other cloud looks like a llama" "cloud" ;; |
||
- : bool * int = (true, 2) |
- : bool * int = (true, 2) |
||
=={{header|Oforth}}== |
|||
<lang Oforth>func: stringMatching(s1, s2) |
|||
{ |
|||
| i | |
|||
s2 isAllAt(s1, 1) ifTrue: [ System.Out s1 << " begins with " << s2 << cr ] |
|||
s2 isAllAt(s1, s1 size s2 size - 1 + ) ifTrue: [ System.Out s1 << " ends with " << s2 << cr ] |
|||
s1 indexOfAll(s2) ->i |
|||
i ifNotNull: [ System.Out s1 << " includes " << s2 << " at position : " << i << cr ] |
|||
"\nAll positions : " println |
|||
1 ->i |
|||
while (s1 indexOfAllFrom(s2, i) dup ->i notNull) [ |
|||
System.Out s1 << " includes " << s2 << " at position : " << i << cr |
|||
i s2 size + ->i |
|||
] |
|||
}</lang> |
|||
{{out}} |
|||
<pre> |
|||
>stringMatching("arduinoardblobard", "ard") |
|||
arduinoardblobard begins with ard |
|||
arduinoardblobard ends with ard |
|||
arduinoardblobard includes ard at position : 1 |
|||
All positions : |
|||
arduinoardblobard includes ard at position : 1 |
|||
arduinoardblobard includes ard at position : 8 |
|||
arduinoardblobard includes ard at position : 15 |
|||
</pre> |
|||
=={{header|OxygenBasic}}== |
=={{header|OxygenBasic}}== |