- This article is about the operators block. For the lists block, see () Contains ()? (List block).
|() Contains ()?|
() contains ()?
The () contains ()? block is a boolean block and an operators block. The block returns whether or not the first parameter's text contains the second parameter's text. The comparison is case-insensitive.
when green flag clicked switch costume to [bunny v] ask [What's this animal?] and wait if <(answer) contains [bunny]?> then // the contains block is used instead of equal to because the user might say "it's a bunny" say [Correct!] else say [Nope!] end
- Main article: List of Block Workarounds
define (string1) contains (string2)::custom set [i v] to  set [j v] to  repeat (length of (string1)) change [i v] by (1) if <(letter (i) of (string1)) = (letter (j) of (string2))> then set [j v] to  repeat until <<not <(letter ((i) + (j)) of (string1)) = (letter (j) of (string2))>> or <(j) > (length of (string2))>> change [j v] by (1) end if <(j) > (length of (string2))> then set [result v] to [true] stop [this script v] end end end