Module:Str find word/doc

Implements template Str find word.

This module looks for a word being present in a comma-separated list of words. It then returns a True or False value. By default, the True-value returned is the found word itself; the False-value is a blank string.

For example, in the source string 'foo, bar' the word 'bar' appears, but the word 'november' does not.
 * (True) &rarr;
 * (False) &rarr;

Multiple word check: The search can be extended to check for multiple words being present.

AND-list of words, all words must be present:
 * (True) &rarr;
 * (False) &rarr;

OR-list of words, at least one off the words must be present:
 * (True) &rarr;
 * (False) &rarr;

Complete words: the complete word is 'foobar' (example needed) Whitespace is trimmed,

The module is aimed at template code usage. (The editor does not have to apply Lua patterns like [%a%d]*). }}

Parameters

 * Main parameters (including their synonyms)

Basic: word is in source-wordlist?

 * (True) &rarr;
 * (False) &rarr;

True/False return value

 * When the word is found in the source (True), the function returns the word itself (by default), or out-true value (when entered non-empty).
 * When not found (False), the function returns a empty string (''), or the out-false value when entered.

AND-wordlist checks

 * word can be a list of words. All will be checked with the AND-requirement (each word must be present).
 * andwords accepts a list of words that all will be checked with the AND-requirement (each word must be present).
 * Alway, both word and andwords are combined into one single AND-wordlist.

OR-wordlist checks

 * orwords, orw
 * Accepts a list of words that all will be checked by the OR-requirement ("at least one of the words must be present).

both AND-words and OR-words to check

 * andwords orwords
 * checks both lists for their own check: "ANd-words" must all be present, "OR-words" must have at least one present.
 * Result: True if both check results are True, otherwise False.

Edge cases

 * Blank list(s)
 * Empty input string(s) will conclude negative:

untested; noinclude from main /doc

 * As of Mar 2023, not supported.

casesensitive

 * true, true Case-sensistive (A=/=a) DEFAULT
 * false, false Not case-sensistive (A=a)

boolean words

 * booleans
 * true will convert all boolean words into "True/False".
 * per module:Yesno (Yes, true, yes, 1 = true) (todo: document value 2?, nil, blanketc. Irrespective of case?)
 * other words not changed ("horse" remains horse, not T/F).
 * Note: per logic definition, the word "false" is returned (as being found).

quotes, escape

 * under construction

synonyms

 * under construction

Errors and analysis

 * The logic itself does not produce errors. There is always a True of False result.


 * Pages with Unknown parameters are listed in.


 * There are no logical errors foreseen: any flaw in the input will return a False result (for example, no input strings to check were entered).


 * true: when in, display a report on input, output and the logical steps (debug).
 * testcases: When set in ns Template or User on subpage /testcases, the Preview report is static (shown permanently).