This is the documentation page for Module:Str find word
- development links (Nov 2021)
- This box: view ·
- module: Str find word (edit · talk · history · links · /subpages · /doc · /doc edit · /sbox · /sbox diff · /test · Template:Str find word) () · /report ()
- template:{{Str find word}} (edit talk history links # /subpages /doc /doc edit /sbox /sbox diff /test) /testcases
- Category:Pages using str find word with unknown parameters (1)
| This module depends on the following other modules: |
Implements {{Str find word}}.
This module looks for a full word 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.
- The search can be extended to check for multiple words being present.
For example, in the string 'alpha, foobar' the word 'alpha' appears, but the word 'foo' does not: there only is the complete word 'foobar'. The module is aimed at template code usage. (The editor does not have to apply Lua patterns like [%a%d]*).
Usage
- This documentation is not up to date. See template {{Str find word}}.
Basic
Core function:
{{Str find word
|source =
|word =
|yes =
|no =
}}
- When the word is found in the source (True), the function returns the word itself (by default), or
|yes=value (when entered non-empty). - When not found (False), the function returns a empty string (
''), or the|no=value when entered.
|source=alpha, foo, lima
|
|word=
|
no |word= entered
| ||
|source=alpha, foo, lima
|
|word=foobar
|
No, not found | full word foo-bar not in the source | |
|source=alpha, foo, lima
|
|word=foobar
|
No, not found | word foo not in the source as full word | |
... |yes=Yes, hit |no=Not found
| ||||
|---|---|---|---|---|
|source=alpha, foo, lima
|
|word=foo
|
Yes, hit | ||
|source=alpha, foo, lima
|
|word=foobar
|
No, not found | ||
All parameters
- All parameters, in three options
{{Str find word
|string =
|word =
|andwords =
|orwords =
|case=
|yes =
|no =
|explain =
}}
|
{{Str find word
|s =
|w =
|andw=
|orw =
|case=
|yes =
|no =
|explain =
}}
|
{{Str find word |s= |w= |andw= |orw= |case= |yes= |no= |explain=}}
More options
|source=|s=
|
|word=|w=
|
|case=
|
result | note | |
|---|---|---|---|---|---|
|s=alpha, foo, lima
|
|w=foo
|
yes | |||
|s=alpha, foo, lima
|
|w=foobar
|
no | |||
|s=alpha, foobar, lima
|
|w=foo
|
no | 'foo' is not the complete word | ||
|s=alpha, FOO, lima
|
|w=foo
|
yes | |case=false: a=A (default)
| ||
|s=alpha, FOO, lima
|
|w=foo
|
no | |case=true: a=/=A
| ||
AND-, OR-wordlist checks
|word=as noted, 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).- When both
|word=,|andwords=are present, they are combined into one single AND-wordlist.
- When both
|orwords=accepts a list of words that all will be checked with the OR-requirement (at least one of the words must be present).
|source=|s=
|
|andwords=|andw=
|
|orwords=|orw=
|
result TODO fix | note |
|---|---|---|---|---|
|s=alpha, foo, lima, delta
|
|andw=delta, lima
|
delta,lima | both words present in the source | |
|s=alpha, foo, lima, delta
|
|andw=foo, nov
|
AND-logic: A word in the AND-list is not present (nov), so false | ||
|s=alpha, foo, lima, delta
|
|andw=delta
|
delta | |w= and |andw= are combined
| |
|s=alpha, foo, lima, delta
|
|orw=delta, lima
|
delta,lima | both OR-words are present in the source | |
|s=alpha, foo, lima, delta
|
foo | OR-logic: one of the words is present (|foo=), so true
| ||
|s=alpha, foo, lima, delta
|
|andw=alpha, lima
|
|orw=foo, nov
|
alpha,lima,foo | |
|s=alpha, foo, lima, delta
|
|andw=bar, april
|
|orw=nov, dec
|
none of the OR-words is present, so false |
issues and ideas
- keep the order, Foo, bar -> foo(1), bar(2)
- eg table col userinput options, then cols in that order?
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 Category:Pages using str find word with unknown parameters (1).
- 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).
|explain=true: when in Preview, display a report on input, output and the logical steps (debug).|explain=testcases: When set in ns Template or User on subpage /testcases, the Preview report is static (shown permanently).