Said() Strings and the Use of Articles

From SCI Wiki
Revision as of 02:39, 17 January 2011 by Andrew Branscom (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

By Gumby

It is wise to take into account articles when creating said strings. Consider all the different ways that a user could might communicate the command give the pig the mirror to the parser.

    // Matches: 'give pig mirror' & 'give the pig mirror' 
    // Ignores: 'give pig the mirror'
       Print("Output A")
    // Matches: 'give pig the mirror' & 'give the pig the mirror'
    // Ignores: 'give pig mirror' & 'give the pig mirror'
       Print("Output B")
    // Combining the 2 gives you a wider input range
    // Matches all inputs specified above...
    (if(Said('give/pig<mirror') or Said('give/pig/mirror'))
       Print("Output C")

As you can see, the first 2 code blocks behave quite differently when the 'the' article is specified, however the 3rd covers all the test cases.