<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.fallenchungus.wiki/index.php?action=history&amp;feed=atom&amp;title=Template%3ATemplate_usage%2Fdoc</id>
	<title>Template:Template usage/doc - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://www.fallenchungus.wiki/index.php?action=history&amp;feed=atom&amp;title=Template%3ATemplate_usage%2Fdoc"/>
	<link rel="alternate" type="text/html" href="https://www.fallenchungus.wiki/index.php?title=Template:Template_usage/doc&amp;action=history"/>
	<updated>2026-04-18T12:44:16Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.44.3</generator>
	<entry>
		<id>https://www.fallenchungus.wiki/index.php?title=Template:Template_usage/doc&amp;diff=2654&amp;oldid=prev</id>
		<title>CapybaraKiller: 1 revision imported from :Wikipedia:Template:Template_usage/doc: To get boxes working.</title>
		<link rel="alternate" type="text/html" href="https://www.fallenchungus.wiki/index.php?title=Template:Template_usage/doc&amp;diff=2654&amp;oldid=prev"/>
		<updated>2025-05-26T06:33:47Z</updated>

		<summary type="html">&lt;p&gt;1 revision imported from &lt;a href=&quot;https://en.wikipedia.org/wiki/Template:Template_usage/doc&quot; class=&quot;extiw&quot; title=&quot;wikipedia:Template:Template usage/doc&quot;&gt;Wikipedia:Template:Template_usage/doc&lt;/a&gt;: To get boxes working.&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 23:33, 25 May 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>CapybaraKiller</name></author>
	</entry>
	<entry>
		<id>https://www.fallenchungus.wiki/index.php?title=Template:Template_usage/doc&amp;diff=2653&amp;oldid=prev</id>
		<title>174.89.12.36: /* Purpose */ most likely meaning</title>
		<link rel="alternate" type="text/html" href="https://www.fallenchungus.wiki/index.php?title=Template:Template_usage/doc&amp;diff=2653&amp;oldid=prev"/>
		<updated>2024-09-15T07:34:29Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Purpose: &lt;/span&gt; most likely meaning&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Documentation subpage}}&lt;br /&gt;
&lt;br /&gt;
{{tsh|tlusage|tlre}}&lt;br /&gt;
&lt;br /&gt;
== Purpose ==&lt;br /&gt;
&lt;br /&gt;
This template helps field the details of users&amp;#039; &amp;lt;kbd&amp;gt;parameter=value&amp;lt;/kbd&amp;gt; deployments on the wiki for any inline template usage.&amp;lt;ref&amp;gt;Some templates, like &amp;#039;&amp;#039;Info box&amp;#039;&amp;#039;, and &amp;#039;&amp;#039;Cite&amp;#039;&amp;#039; are usually written with one line per parameter.  These are possible to find using regexp, but this feature is not yet available for this template.&amp;lt;/ref&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Special:Version#installed software|This version]] of the search engine, [[mw:Help:CirrusSearch|Cirrus Search]], offers  &lt;br /&gt;
regular expression searches.  Here is the advantage:&lt;br /&gt;
: {{Sl|hastemplate:&amp;quot;Convert&amp;quot; insource:&amp;quot;{{!}}xx{{!}}&amp;quot; prefix::}} finds 3123 articles, but&lt;br /&gt;
: {{Template usage|Convert|\{{!}}xx\{{!}}|0}} finds the 45 you really wanted, the ones having the xx &amp;#039;&amp;#039;inside the template call&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
This template instills some regexp-search best practices:&lt;br /&gt;
* Always filter a regexp search. Never run a bare regexp search. This template creates a search link, but unlike {{tl|search link}}, this template pre-builds filters and the more arcane elements of the regexp necessary to target a pattern &amp;#039;&amp;#039;inside&amp;#039;&amp;#039; a template wikitext.  Here you need only enter the template name, and start focusing on the search &amp;quot;pattern&amp;quot;.&lt;br /&gt;
* Start in a small search domain before running it on the wider wiki. This template defaults the search domain to &amp;#039;&amp;#039;one page&amp;#039;&amp;#039; in order to create a small footprint, because only a few regex searches are technically able to run at a time against the database.  It minimizes your footprint, and guarantees that your search link will never run an untested regexp on {{NUMBEROFPAGES}} pages, even if [[H:S#User preferences|someone&amp;#039;s default search]] would let them do that.&lt;br /&gt;
*Develop the query with the target data in view for study. By default you start with this template in an &amp;#039;&amp;#039;ad hoc&amp;#039;&amp;#039; sandbox, the edit box of a page that already contains a sample of the target. [[Regular expressions]] are formal logic, and so these little computer programs will usually contain mistakes at first that are very easy to discover by running a quick test, so it is characteristic of regex that they are rapidly developed around a small set of test data, rather than slowly debugged against the large data-set they are designed for. &lt;br /&gt;
{{tl|Regex}} also employs these practices, but not specifically for template calls.&lt;br /&gt;
&lt;br /&gt;
With this template developers can 1) generate lists of sub-optimal or non-preferred template usage, and &amp;lt;ref&amp;gt;These will propagate themselves as there presence tempts editors who copy other template calls that they see.  These errors are caused by haste, or poor, or misunderstood template documentation.&amp;lt;/ref&amp;gt; 2) achieve template feature parity and avoid the need for backward compatible code. They can do this by directly removing unwanted template usage from the wikitext. Robo-edits can change a feature or add a new feature in lock step with a new version of a template. [[WP:AWB]] is such a robo-editor and it can also do safe regexp searches, and is a complete alternative, but you&amp;#039;d have to download it first.&lt;br /&gt;
&lt;br /&gt;
== Arguments ==&lt;br /&gt;
{{details|Help:Template#Parameters}} &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|{{para|template}} or {{param|1}}|| template name. Defaults to &amp;quot;Template usage&amp;quot;.  It is also the first unnamed parameter.&lt;br /&gt;
|-&lt;br /&gt;
|{{para|pattern}} or {{param|2}}|| a regexp search pattern. Targets the inside of all occurrences of the template in wikitext, that is, after the first pipe and before the closing curly bracket: &lt;br /&gt;
&amp;lt;kbd&amp;gt;&amp;amp;#123;&amp;amp;#123;Val{{!}}{{hilite|1=9999{{!}}ul=m/s{{!}}fmt=commas}}&amp;amp;#125;&amp;amp;#125;&amp;lt;/kbd&amp;gt;. &lt;br /&gt;
Always use {{tl|!}} for `{{!}}&amp;#039;.  Use {{tl|1==}} for `=&amp;#039; at any time, or when using the unnamed form. See [[#About CirrusSearch|&amp;amp;sect;About CirrusSearch]]&amp;quot; below for more details about types of queries.&lt;br /&gt;
|-&lt;br /&gt;
|{{para|prefix}} or {{param|3}}|| search domain. Has [[H:S#Parameters|the usual &amp;#039;&amp;#039;prefix:&amp;#039;&amp;#039; meaning]], plus accepts a [[WP:namespace|namespace]] number, or &amp;lt;code&amp;gt;n&amp;lt;/code&amp;gt; for the current namespace (or `{&amp;lt;nowiki/&amp;gt;{ns:1}}:&amp;#039;, etc.). For all of mainspace use &amp;lt;code&amp;gt;:&amp;lt;/code&amp;gt; or &amp;lt;kbd&amp;gt;0&amp;lt;/kbd&amp;gt; (zero). To search only mainspace articles that start with &amp;#039;&amp;#039;letter(s)&amp;#039;&amp;#039;, assign &amp;#039;&amp;#039;that&amp;#039;&amp;#039; to prefix. To search another namespace that starts with &amp;#039;&amp;#039;letter(s)&amp;#039;&amp;#039;, spell-out the namespace (or use `{&amp;lt;nowiki/&amp;gt;{ns:1}}:&amp;#039;&amp;#039;letter(s)&amp;#039;&amp;#039;, etc.&amp;#039;). Defaults to its current page.&lt;br /&gt;
|-&lt;br /&gt;
|{{para|label}} or {{param|4}}|| search link label.  It is the forth &amp;quot;unnamed&amp;quot; parameter, so if you enter the first three directly (unnamed), you can also enter a link label directly.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{&amp;lt;nowiki /&amp;gt;{Template | parameters | can direct template behavior.}}&lt;br /&gt;
:&amp;quot;Named&amp;quot; parameters use &amp;lt;kbd&amp;gt;|{{spaces|2}}name{{spaces|2}}={{spaces|2}}indirect value{{spaces|2}}|&amp;lt;/kbd&amp;gt;{{spaces|2}}passing in{{spaces|2}}&amp;#039;&amp;lt;kbd&amp;gt;indirect value&amp;lt;/kbd&amp;gt;&amp;#039;.&lt;br /&gt;
:&amp;quot;Unnamed&amp;quot; parameters use &amp;lt;kbd&amp;gt;|{{spaces|2}}direct value{{spaces|2}}|&amp;lt;/kbd&amp;gt;{{spaces|2}}passing in{{spaces|2}}&amp;#039;&amp;lt;kbd&amp;gt;{{spaces|2}}direct value{{spaces|2}}&amp;lt;/kbd&amp;gt;&amp;#039; (with outer spaces.)&lt;br /&gt;
&lt;br /&gt;
== Procedure ==&lt;br /&gt;
&lt;br /&gt;
Namespace plus pagename equals fullpagename.&lt;br /&gt;
&lt;br /&gt;
The procedure here is an iterative, read-evaluate-modify cycle.  &lt;br /&gt;
# Find an existing fullpagename with the template instances you are interested in targeting. Or create one yourself, and save it to the database so the query will find it.  &lt;br /&gt;
# Open the wikitext. Enter the template name and a regex pattern. (A prefix will be added later.)&lt;br /&gt;
# Show Preview.  &lt;br /&gt;
# Click the newly rendered search link. Note the bold text in each match, the query (centered), and the count (off to the right).&lt;br /&gt;
# Go back in your browser to the edit box. (Or don&amp;#039;t go back, you may want to modify the query on the search results page.)&lt;br /&gt;
# Modify the regexp in the edit box. Cycle. &lt;br /&gt;
# Enter a prefix. Start with a namespace.  You can then reduce the number of results by adding [[H:S#Parameters|the first letter(s) of]] pagenames onto the namespace.&lt;br /&gt;
&lt;br /&gt;
Then you might need to run each alias (name) the template might have.&lt;br /&gt;
&lt;br /&gt;
Step &amp;#039;&amp;#039;&amp;#039;6&amp;#039;&amp;#039;&amp;#039; is the core provision of this template.  &amp;#039;&amp;#039;Caveat emptor&amp;#039;&amp;#039;: if you change the &amp;#039;&amp;#039;target&amp;#039;&amp;#039;, you&amp;#039;ll have to save and [[WP:Purge|purge]], &amp;#039;&amp;#039;but not if you just change the pattern&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
This template offers the addition of the search link label, but defaults to showing the regexp.&lt;br /&gt;
&lt;br /&gt;
Currently there is no way to share a {{tlf|tlusage}} search link if you want it to search more than one namespace.  The workaround is one &amp;#039;&amp;#039;tlusage&amp;#039;&amp;#039; per namespace, or to copy the regexp from a &amp;#039;&amp;#039;tlusage&amp;#039;&amp;#039; results page query to a {{tl|search link}} template, which offers the setting of namespaces, and all.  Currently choosing a namespace is not mandatory there, but if you don&amp;#039;t choose a namespace there, be aware of possible inconsistencies: the search domain will be different every time it runs, depending on the current user&amp;#039;s current search domain. You can set it and forget it at [[Special:Search]] Advanced.&lt;br /&gt;
&lt;br /&gt;
== Examples and sandbox ==&lt;br /&gt;
&lt;br /&gt;
As an &amp;#039;&amp;#039;ad hoc&amp;#039;&amp;#039; sandbox, you can show the wikitext of a section like this, already saved in the database, with template calls on it, modify some patterns, do a Show Preview, and see what matches when you click on the newly formed &amp;quot;search the database&amp;quot; link, all quite safely, and without changing a thing in the database.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--If you change the below, sample, targets, you&amp;#039;ll have to save the page&lt;br /&gt;
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv&lt;br /&gt;
to get them into the database to find them in the query. The first batch here&lt;br /&gt;
is such concentrated text that it shows up to six or seven hits on the results page.  There is no excess verbiage here. --&amp;gt;&lt;br /&gt;
The template calls that produce &amp;quot;{{val|1|ul=ft/s|fmt =   commas}},&lt;br /&gt;
{{val|2|u=ft2}},&lt;br /&gt;
{{val|3|u=m/s| fmt =commas }},&lt;br /&gt;
{{val|4|u=m*s-2}},&lt;br /&gt;
{{val|5|u=ft.s-2}},&lt;br /&gt;
{{val|6|u=C/J}}, and&lt;br /&gt;
{{val|7|ul=J/C}}&amp;quot;&lt;br /&gt;
appear in the wikitext of this section like this:&lt;br /&gt;
# &amp;lt;kbd&amp;gt;&amp;lt;nowiki&amp;gt;{{val|1|ul=ft/s|fmt =   commas}}&amp;lt;/nowiki&amp;gt;&amp;lt;/kbd&amp;gt; &lt;br /&gt;
# &amp;lt;kbd&amp;gt;&amp;lt;nowiki&amp;gt;{{val|2|u=ft2}}&amp;lt;/nowiki&amp;gt;&amp;lt;/kbd&amp;gt; &lt;br /&gt;
# &amp;lt;kbd&amp;gt;&amp;lt;nowiki&amp;gt;{{val|3|u=m/s| fmt =commas }}&amp;lt;/nowiki&amp;gt;&amp;lt;/kbd&amp;gt; &lt;br /&gt;
# &amp;lt;kbd&amp;gt;&amp;lt;nowiki&amp;gt;{{val|4|u=m*s-2}}&amp;lt;/nowiki&amp;gt;&amp;lt;/kbd&amp;gt; &lt;br /&gt;
# &amp;lt;kbd&amp;gt;&amp;lt;nowiki&amp;gt;{{val|5|u=ft.s-2}}&amp;lt;/nowiki&amp;gt;&amp;lt;/kbd&amp;gt;&lt;br /&gt;
# &amp;lt;kbd&amp;gt;&amp;lt;nowiki&amp;gt;{{val|6|u=C/J}}&amp;lt;/nowiki&amp;gt;&amp;lt;/kbd&amp;gt; &lt;br /&gt;
# &amp;lt;kbd&amp;gt;&amp;lt;nowiki&amp;gt;{{val|7|ul=J/C}}&amp;lt;/nowiki&amp;gt;&amp;lt;/kbd&amp;gt; → {{val|7|ul=J/C}}&lt;br /&gt;
&amp;lt;!--^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^&lt;br /&gt;
If you change the above targets, you&amp;#039;ll have to save the page&lt;br /&gt;
to get them into the database to find them in the query.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note how the above targets are |numbered|, then click on these links.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; width=&amp;quot;200px&amp;quot; | Query&lt;br /&gt;
! Transcluding {{tlf|tlusage}} produces a [[Template:Internal search templates common doc#Search links|search link]]&lt;br /&gt;
! Answer&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Q1&amp;#039;&amp;#039;&amp;#039; Does this page employ template Val?&lt;br /&gt;
|{{#invoke:DemoTemplate|search link|hastemplate:&amp;quot;val&amp;quot; prefix:{{FULLPAGENAME}}}} &lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A.&amp;#039;&amp;#039;&amp;#039; Yes, because its title shows on the search results.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Q2&amp;#039;&amp;#039;&amp;#039; Does this page use Val&amp;#039;s fmt parameter?&lt;br /&gt;
|&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{tlusage|val|fmt }}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; → &lt;br /&gt;
{{tlusage|val|fmt }}&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;. Look for 1 and 3 in the search results in bold text.  &lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Q3&amp;#039;&amp;#039;&amp;#039;. Which calls to Val on this page use &amp;lt;kbd&amp;gt;u=ft&amp;lt;/kbd&amp;gt; OR &amp;lt;kbd&amp;gt;ul=ft&amp;lt;/kbd&amp;gt;? (a one letter diff)&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{tlusage|val|pattern=ul?=ft}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; →&lt;br /&gt;
{{tlusage|val|pattern=ul?=ft}}&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;. Look for 1, 2, and 5 in bold text.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Q4&amp;#039;&amp;#039;&amp;#039;. AND of these, who also uses fmt=commas after that?&lt;br /&gt;
|&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{tlusage|val|pattern=ul?=ft.*commas}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; →&lt;br /&gt;
{{tlusage|val|pattern=ul?=ft.*commas}}&lt;br /&gt;
|A. No context shown, but article title is shown. A half a Bug?&lt;br /&gt;
|-&lt;br /&gt;
|Which use one space before commas?&lt;br /&gt;
|&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{tlusage|val|. commas}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; →&lt;br /&gt;
{{tlusage|val|. commas}}&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;. 1 but not 2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Q5&amp;#039;&amp;#039;&amp;#039;. Which use either ul?=ft OR fmt=commas&lt;br /&gt;
|&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{tlusage|val|pattern=(ul?=ft{{!}}co)}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; →&lt;br /&gt;
{{tlusage|val|pattern=(ul?=ft{{!}}=co)}}&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;. 1, 2, 3, and 5.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Q6&amp;#039;&amp;#039;&amp;#039;. Which use &amp;#039;&amp;#039;ft&amp;#039;&amp;#039; or &amp;#039;&amp;#039;m&amp;#039;&amp;#039;, in {{para|u}} or {{para|ul}}?&lt;br /&gt;
|&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{tlusage|val|pattern=ul?=(ft{{!}}m)}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; → &lt;br /&gt;
{{tlusage|val|pattern=ul?=(ft{{!}}m)}}&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;. 1, 2, 3, 4, and 5.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Q7&amp;#039;&amp;#039;&amp;#039;. Which use . or * in the unit code?&lt;br /&gt;
|&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{tlusage|val|pattern=u.+(\.{{!}}\*) }}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; → &lt;br /&gt;
{{tlusage|val|pattern=u.+(\.{{!}}\*) }}&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;. 4 and 5.&lt;br /&gt;
|-&lt;br /&gt;
|Which use a pipe?&lt;br /&gt;
|&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{tlusage|val|\{{!}} }}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; → &lt;br /&gt;
{{tlusage|val|\{{!}} }}&lt;br /&gt;
|All of them&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Q8&amp;#039;&amp;#039;&amp;#039;. Which use / or - &amp;#039;&amp;#039;within&amp;#039;&amp;#039; the {{para|u}} or {{para|ul}} paramter?&lt;br /&gt;
|&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{tlusage|val|pattern=ul?=[^{{!}}}]+(\/{{!}}-)}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; → &lt;br /&gt;
{{tlusage|val|pattern=ul?=[^{{!}}}]+(\/{{!}}-)}}&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;. 1,3,4,5,6 and 7.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;Q9&amp;#039;&amp;#039;&amp;#039;. Where is Val used in the template namespace with u or ul?&lt;br /&gt;
|&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{tlre|val|pattern=ul?=|prefix=10}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; →&lt;br /&gt;
{{tlre|val|pattern=ul|prefix=10}}&lt;br /&gt;
|&amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039;. In the 15 or so articles listed.  (Uses the {{tlf|tlre}} shortcut.)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Q10&amp;#039;&amp;#039;&amp;#039; Which articles employ {{tl|Convert}}&amp;#039;s &amp;quot;and(-)&amp;quot; option?&lt;br /&gt;
| &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{tlre|Convert|Articles using {{tlf|Convert}}&amp;#039;s &amp;quot;and(-)&amp;quot; option.|pattern=and\(-\)|prefix = 0|}}|prefix = 0|}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; →&lt;br /&gt;
{{tlre|Convert|Articles using {{tlf|Convert}}&amp;#039;s &amp;quot;and(-)&amp;quot; option.|pattern=and\(-\)|prefix = 0|}}&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;A&amp;#039;&amp;#039;&amp;#039; Only two.&lt;br /&gt;
|} &lt;br /&gt;
&lt;br /&gt;
In &amp;#039;&amp;#039;&amp;#039;Q2&amp;#039;&amp;#039;&amp;#039;, notice how the MediaWiki software ignores the spaces &amp;#039;&amp;#039;around&amp;#039;&amp;#039; parameters, but how in &amp;#039;&amp;#039;&amp;#039;Q4&amp;#039;&amp;#039;&amp;#039; the same MediaWiki software processes the spaces &amp;#039;&amp;#039;inside&amp;#039;&amp;#039; parameters. Q2 might have been solved with a plain &amp;lt;kbd&amp;gt;insource:val fmt&amp;lt;/kbd&amp;gt; search because &amp;quot;fmt&amp;quot; and &amp;quot;val&amp;quot; are whole words, and fmt is rarely seen apart from inside Val.  How about &amp;lt;kbd&amp;gt;hastemplate:val insource:fmt&amp;lt;/kbd&amp;gt;?&lt;br /&gt;
&lt;br /&gt;
Also see the {{plain link|https://www.elastic.co/guide/en/elasticsearch/reference/current/regexp-syntax.html| more general examples for the regex of CirrusSearch}}.&lt;br /&gt;
&lt;br /&gt;
== About CirrusSearch ==&lt;br /&gt;
These powerful (but expensive) [[mw:Extension:CirrusSearch|CirrusSearch]] search results could not be obtained with the previous [[mw:Extension:Lucene-search|Lucene-search]] parameters. Regexp searches are restricted on the server, so this template reduces the regex search footprint by using the &amp;#039;&amp;#039;hastemplate:&amp;#039;&amp;#039; filter every time, and further restricts the search domain to a namespace &amp;#039;&amp;#039;at most&amp;#039;&amp;#039;, by using the &amp;#039;&amp;#039;prefix:&amp;#039;&amp;#039; filter.  The &amp;#039;&amp;#039;prefix:&amp;#039;&amp;#039; filter can also filter a namespace by specifying that only page names that start with given letters are searched.&lt;br /&gt;
&lt;br /&gt;
=== Parameters insource and hastemplate ===&lt;br /&gt;
&lt;br /&gt;
{{See also|Help:Search#Parameters}}&lt;br /&gt;
&lt;br /&gt;
Here are some notes on the [[mw:Help:CirrusSearch|CirrusSearch]] features of &amp;#039;&amp;#039;hastemplate&amp;#039;&amp;#039; and &amp;#039;&amp;#039;insource&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;Hastemplate&amp;#039;&amp;#039; finds what is deployed:&lt;br /&gt;
* hastemplate will &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; count a template when only their sub-template is called&lt;br /&gt;
* hastemplate will &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; count templates inside comments&lt;br /&gt;
* hastemplate will &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; count templates inside nowiki tags&lt;br /&gt;
* hastemplate &amp;#039;&amp;#039;&amp;#039;will&amp;#039;&amp;#039;&amp;#039; count templates inside parser functions and other templates, as long as the template is wrapped with double curly braces.&lt;br /&gt;
Hastemplate is case-insensitive.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Insource has a dual role:&lt;br /&gt;
*&amp;lt;kbd&amp;gt;insource:&amp;quot;&amp;#039;&amp;#039;quotes-delimited arguments&amp;#039;&amp;#039;&amp;quot;&amp;lt;/kbd&amp;gt; finds only whole, alphanumeric words, adjacent to one another in that sequence in the wikitext, treating the entire set of non-alpanumeric characters between them as if they were whitespace. For example, &amp;lt;code&amp;gt;insource:&amp;quot;M S&amp;quot;&amp;lt;/code&amp;gt; matches &amp;lt;kbd&amp;gt;m/s&amp;lt;/kbd&amp;gt;, as do &amp;lt;code&amp;gt;insource:&amp;quot;M-S&amp;quot;&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;insource:&amp;quot;m=s&amp;quot;&amp;lt;/code&amp;gt;; they all have two arguments, and what matched is shown in bold.&lt;br /&gt;
*Plain &amp;lt;kbd&amp;gt;insource:word1 word2&amp;lt;/kbd&amp;gt; has one argument, word1. The words after word1 are treated normally: they&amp;#039;re all ANDed as whole words (never as pieces or patterns) OR their word stems, anywhere in the wikitext of the page, and in any sequence; and the match is not shown in bold. (Intitle acts the same way around the &amp;quot;quotes&amp;quot; syntax.)&lt;br /&gt;
* &amp;lt;kbd&amp;gt;Insource:/&amp;#039;&amp;#039;slash delimited argument&amp;#039;&amp;#039;/&amp;lt;/kbd&amp;gt; finds everything, even comments. It only ever has one argument.  What matched is shown in bold text.&lt;br /&gt;
*&amp;lt;kbd&amp;gt;Insource:/&amp;#039;&amp;#039;regexp&amp;#039;&amp;#039;/&amp;lt;/kbd&amp;gt; finds everything, even pieces and parts, conveying no notion of &amp;quot;words&amp;quot;, but only that of a character in an adjacent position to another character in a sequence.&lt;br /&gt;
* &amp;lt;kbd&amp;gt;Insource:/&amp;#039;&amp;#039;regexp&amp;#039;&amp;#039;/&amp;lt;/kbd&amp;gt; requires you to use &amp;lt;kbd&amp;gt;\/&amp;lt;/kbd&amp;gt; for any slash character in the pattern for an obvious reason.  It also requires you to &amp;quot;backslash-escape&amp;quot; other metacharacters for various other reasons.&lt;br /&gt;
For &amp;#039;&amp;#039;insource:&amp;#039;&amp;#039; spaces are not allowed after the colon; it&amp;#039;s &amp;lt;code&amp;gt;insource:&amp;quot;&amp;lt;/code&amp;gt;, or &amp;lt;code&amp;gt;insource:/&amp;lt;/code&amp;gt; for good reasons.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Insource &amp;quot;with quotes&amp;quot; is a safe and sufficient way to find many kinds of template usage. Say the target string is {{nowrap|&amp;lt;kbd&amp;gt;&amp;lt;nowiki&amp;gt;{{Val|9999|ul=AU|fmt=commas}}&amp;lt;/nowiki&amp;gt;&amp;lt;/kbd&amp;gt;}}:&lt;br /&gt;
* &amp;lt;kbd&amp;gt;insource:&amp;quot;val 9999 ul AU fmt commas&amp;quot;&amp;lt;/kbd&amp;gt; → match&lt;br /&gt;
* &amp;lt;kbd&amp;gt;hastemplate: val insource:&amp;quot;9999 ul&amp;quot;&amp;lt;/kbd&amp;gt; → match&lt;br /&gt;
* &amp;lt;kbd&amp;gt;hastemplate: val insource:&amp;quot;999&amp;quot;&amp;lt;/kbd&amp;gt; → no match&lt;br /&gt;
* &amp;lt;kbd&amp;gt;hastemplate: val insource:&amp;quot;fmt commas&amp;quot;&amp;lt;/kbd&amp;gt; → match&lt;br /&gt;
* &amp;lt;kbd&amp;gt;hastemplate: val insource:&amp;quot;ul AU&amp;quot;&amp;lt;/kbd&amp;gt; → match&lt;br /&gt;
* &amp;lt;kbd&amp;gt;hastemplate: val insource:&amp;quot;ul au&amp;quot;&amp;lt;/kbd&amp;gt; → match&lt;br /&gt;
* &amp;lt;kbd&amp;gt;hastemplate: val insource:fmt&amp;lt;/kbd&amp;gt; → match&lt;br /&gt;
In some cases there might be disadvantages. The &amp;#039;&amp;#039;insource&amp;#039;&amp;#039;:&amp;quot;quotes version&amp;quot;, is case insensitive and blind to non-alphanumeric characters.  In other cases it is an advantage to have more search results than intended.  For thorough precision, use /regex/.&lt;br /&gt;
&lt;br /&gt;
=== About regex ===&lt;br /&gt;
&lt;br /&gt;
This covers enough regex to get started using this template to answer any question about wikitext contents on the wiki.  Regex are about using &amp;#039;&amp;#039;meta characters&amp;#039;&amp;#039; to create patterns that match any &amp;#039;&amp;#039;literal characters&amp;#039;&amp;#039;.  The pattern you give will match a target, character by character.  To make some positions match with multiple possibilities, metacharacters are needed, and they are from the same keyboard characters that are also in the wikitext.&lt;br /&gt;
&lt;br /&gt;
==== Metacharacters ====&lt;br /&gt;
&lt;br /&gt;
The left curly bracket is a metacharacter, and so the regexp pattern given must &amp;quot;escape&amp;quot; any opening curly bracket &amp;lt;code&amp;gt;\{&amp;lt;/code&amp;gt; in the target &amp;quot;&amp;lt;kbd&amp;gt;{&amp;lt;/kbd&amp;gt;&amp;quot; intending to match a template in the wikitext.  All target text (all wikitext) is literal text, but we can backslash &amp;quot;escape&amp;quot; the regex metacharacters &amp;lt;code&amp;gt; \. \? \+ \* &amp;lt;nowiki&amp;gt;\{{!}}&amp;lt;/nowiki&amp;gt; \{ \[ \] \( \) \&amp;quot;  \\ \# \@ \&amp;lt;  \~ &amp;lt;/code&amp;gt; when we refer to them as literal characters in the wikitext we are interested in mining. (Notice the backslash-escape of the already template-escaped pipe character in order to find a literal pipe character in the wikitext.) Search will ignore the backslash wherever it is meaningless or unnecessary: &amp;lt;code&amp;gt;\n&amp;lt;/code&amp;gt; matches &amp;lt;kbd&amp;gt;n&amp;lt;/kbd&amp;gt;, and so on.  So although you don&amp;#039;t need to backslash escape &amp;lt;code&amp;gt;&amp;amp;&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;}&amp;lt;/code&amp;gt;, it is safe to do so.  An unnecessary backslash will not cause your pattern to fail, but what &amp;#039;&amp;#039;will&amp;#039;&amp;#039; is using certain characters literally{{mdash}}&amp;lt;kbd&amp;gt; [ ] . * + ? &amp;amp;#124; { ( ) &amp;quot;  \ # @ &amp;lt;  ~ &amp;lt;/kbd&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;[0-9]&amp;lt;/code&amp;gt; will match any digit, &amp;lt;code&amp;gt;[a-y]&amp;lt;/code&amp;gt; any lowercase letter except z, &amp;lt;code&amp;gt;[zZ]&amp;lt;/code&amp;gt; any z, (and so on). So square brackets mean &amp;quot;character class&amp;quot;. &lt;br /&gt;
* Dot &amp;lt;code&amp;gt;.&amp;lt;/code&amp;gt; will match a newline, or &amp;#039;&amp;#039;any character&amp;#039;&amp;#039; in the targeted position&lt;br /&gt;
&lt;br /&gt;
The number of sequential digits or characters these symbols match is expressed by following it with a &amp;#039;&amp;#039;quantifying&amp;#039;&amp;#039; metacharacter: &lt;br /&gt;
* &amp;lt;code&amp;gt;*&amp;lt;/code&amp;gt; means zero or more &lt;br /&gt;
* &amp;lt;code&amp;gt;+&amp;lt;/code&amp;gt; means one or more&lt;br /&gt;
* &amp;lt;code&amp;gt;?&amp;lt;/code&amp;gt; means zero or one&lt;br /&gt;
of the character it follows after. The number of times it matches can also be given in a range, &amp;lt;code&amp;gt;a{2} a{2,} a{2,5}&amp;lt;/code&amp;gt; matches exactly 2, 2 or more, or 2-5 &amp;lt;kbd&amp;gt;a&amp;lt;/kbd&amp;gt;&amp;#039;s.  So curly brackets mean &amp;quot;quantifier&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* The parentheses are a grouping mechanism, so we can quantify more than just the previous character, and so we can make boundaries for a set of &amp;#039;&amp;#039;alternative&amp;#039;&amp;#039; matches.  (See &amp;#039;&amp;#039;alternation&amp;#039;&amp;#039; below.)&lt;br /&gt;
* The quotation marks are an escape mechanism, like square brackets or the backslash.&lt;br /&gt;
* The angle brackets stand for numerals, not digits.  Say &amp;lt;code&amp;gt;&amp;lt;5-799&amp;gt;&amp;lt;/code&amp;gt;, to match 5{{ndash}}799, in one to three positions.  Compare this with the alternative:  &amp;lt;code&amp;gt;[0-9]{1,3}&amp;lt;/code&amp;gt; could match ones, tens, or thousands as, 0-999 or 00-999 or 000-999.&lt;br /&gt;
* Tilde &amp;lt;code&amp;gt;~&amp;lt;/code&amp;gt; looks ahead and negates the next character.{{fv|date=September 2024|reason=This doesn&amp;#039;t work. Did this only apply to the old Elasticsearch?}} In other words, if the pattern matches in this position, then un-match it if the next character is &amp;lt;code&amp;gt;~&amp;lt;/code&amp;gt;&amp;#039;&amp;#039;character&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
The {{plain link|https://www.elastic.co/guide/en/elasticsearch/reference/current/regexp-syntax.html|other metacharacters offered by CirrusSearch}}{{fv|date=September 2024|reason=That is the old Elasticsearch, not Wikipedia&amp;#039;s and the link text&amp;#039;s CirrusSearch}} may be helpful in some cases: &amp;#039;&amp;#039;complement&amp;#039;&amp;#039; &amp;lt;kbd&amp;gt;~&amp;lt;/kbd&amp;gt;, &amp;#039;&amp;#039;interval&amp;#039;&amp;#039; &amp;lt;kbd&amp;gt; &amp;lt;3-5559&amp;gt;&amp;lt;/kbd&amp;gt;, &amp;#039;&amp;#039;intersection&amp;#039;&amp;#039; &amp;lt;kbd&amp;gt;&amp;amp;&amp;lt;/kbd&amp;gt;, and &amp;#039;&amp;#039;any string&amp;#039;&amp;#039; &amp;lt;kbd&amp;gt;@&amp;lt;/kbd&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==== Character classes ====&lt;br /&gt;
&lt;br /&gt;
A character class is enclosed in [square brackets].  It means these characters, &amp;quot;literal characters&amp;quot;, plural. It means &amp;quot;literal&amp;quot;, and so &amp;#039;&amp;#039;normally&amp;#039;&amp;#039; you don&amp;#039;t have to escape a metacharacter character in a character class; they&amp;#039;re already square-brackets escaped.  The /slash delimiters/ mean we must of course escape &amp;#039;&amp;#039;any&amp;#039;&amp;#039; slash character, even inside a character class. No other character in a character class except slash always needs escaping; but because &amp;lt;code&amp;gt;]&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;-&amp;lt;/code&amp;gt; have special meaning (metacharacter) to a character class, they must be escaped sometimes: those two are also literal (escaped) metacharacters &amp;#039;&amp;#039;if they are the first character&amp;#039;&amp;#039;, but otherwise they must be also, like dash, be escaped: only backslash-escape works as the escape mechanism in a character class.&lt;br /&gt;
&lt;br /&gt;
A character class can serve to escape metacharacters, so &amp;lt;code&amp;gt;[-|*\/.{\]]&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;[]|*\/.{\-]&amp;lt;/code&amp;gt; means &amp;quot;either a dash OR pipe OR star OR slash OR dot OR left curly bracket or a right square bracket&amp;quot;.  So &amp;lt;code&amp;gt;[][.?+*|\/{}()\-]&amp;quot;&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;[-[.?+*|\/{}()\]]&amp;quot;&amp;lt;/code&amp;gt; works to find all the metacharacters in the wikitext, all of them except the backslash.  Neither &amp;lt;code&amp;gt;[\]&amp;lt;/code&amp;gt; nor &amp;lt;code&amp;gt;[\\]&amp;lt;/code&amp;gt; allows us to OR a literal backslash.  To OR a backslash character, there&amp;#039;s &amp;#039;&amp;#039;&amp;#039;alternation&amp;#039;&amp;#039;&amp;#039; with the pattern &amp;lt;code&amp;gt;\\&amp;lt;/code&amp;gt; to handle that case.  (See below.)&lt;br /&gt;
&lt;br /&gt;
A character class understands the &amp;quot;inverse&amp;quot; of itself, &amp;lt;kbd&amp;gt;[^abc]&amp;lt;/kbd&amp;gt; is &amp;quot;not a or b or c&amp;quot;. A character class stands for a single character in a targeted position, so it&amp;#039;s not really an inverse of a set, but rather a NOT of a character.&lt;br /&gt;
&lt;br /&gt;
==== Alternation ====&lt;br /&gt;
&lt;br /&gt;
Finally, &amp;#039;&amp;#039;&amp;#039;alternation&amp;#039;&amp;#039;&amp;#039; is a class of regex that contains alternative possibilities for a match, say an AA or a BB, or a CC:&lt;br /&gt;
* &amp;quot;AA&amp;quot; OR &amp;quot;BB&amp;quot; OR &amp;quot;CC&amp;quot; in Boolean logic  &lt;br /&gt;
* &amp;lt;kbd&amp;gt;AA|BB|CC&amp;lt;/kbd&amp;gt; in a standard, MediaWiki CirrusSearch, regexp&lt;br /&gt;
* &amp;lt;code&amp;gt;&amp;#039;&amp;#039;&amp;#039;(&amp;#039;&amp;#039;&amp;#039;&amp;lt;nowiki&amp;gt;AA{{!}}BB{{!}}CC&amp;lt;/nowiki&amp;gt;&amp;#039;&amp;#039;&amp;#039;)&amp;#039;&amp;#039;&amp;#039;&amp;lt;/code&amp;gt; where it is used within a larger regexp. We need to replace the pipe character with {{tl|!}} so that the &amp;quot;pipe&amp;quot; for the regexp won&amp;#039;t confuse this template (or any other template).  We need the parentheses  at times because an alternation finds the &amp;#039;&amp;#039;longest&amp;#039;&amp;#039; pattern, and so the parentheses define that boundary, but it&amp;#039;s a boundary you don&amp;#039;t have to make if an alternation is the entire regexp pattern.  In our case the {{para|pattern}} you supply is situated at the end of a longer, pre-built regexp.&lt;br /&gt;
&lt;br /&gt;
==== About this template ====&lt;br /&gt;
&lt;br /&gt;
The wiki regex is pretty straightforward.  Characters stand for themselves unless they are metacharacters.  If they are metacharacters they are escaped if outside of a character class.  Use one of three escape mechanisms:&lt;br /&gt;
* &amp;lt;code&amp;gt;&amp;quot;.&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;\.&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;[.]&amp;lt;/code&amp;gt;&lt;br /&gt;
where the dot is now a literal dot in the wikitext, not the metacharacter.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
First, this template take&amp;#039;s [[#Parameters|its arguments]] named or unnamed.  If you use the &amp;#039;&amp;#039;unnamed&amp;#039;&amp;#039; one, you can give regexp patterns that start or end with a space.  If you use the &amp;#039;&amp;#039;named&amp;#039;&amp;#039; one, you must, additionally, &amp;quot;escape&amp;quot; any outer space. (To escape is explained elsewhere.) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The regexp targets the area after the initial pipe and before the first closing curly bracket, &amp;lt;kbd&amp;gt;&amp;amp;#123;&amp;amp;#123;Val{{!}}&amp;#039;&amp;#039;&amp;#039;{{hilite|1=9999{{!}}ul=m/s{{!}}fmt=commas}}&amp;#039;&amp;#039;&amp;#039;&amp;amp;#125;&amp;amp;#125;&amp;lt;/kbd&amp;gt;. This pattern portion is expanded &amp;lt;kbd&amp;gt;/[Vv]al\|[^}]*&amp;lt;/kbd&amp;gt;&amp;lt;code&amp;gt;{{param|pattern}}&amp;lt;/code&amp;gt;&amp;lt;kbd&amp;gt;\}/&amp;lt;/kbd&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This template &amp;#039;&amp;#039;could&amp;#039;&amp;#039; construct the pattern &amp;lt;kbd&amp;gt;\{[Nn]ame.?\|[^}]*{{param|pattern}}&amp;lt;/kbd&amp;gt;, where &amp;lt;kbd&amp;gt;pattern&amp;lt;/kbd&amp;gt; is the value you give. That regexp means &lt;br /&gt;
* &amp;lt;kbd&amp;gt;pattern&amp;lt;/kbd&amp;gt; &amp;#039;&amp;#039;follows&amp;#039;&amp;#039; any number (&amp;lt;kbd&amp;gt;*&amp;lt;/kbd&amp;gt;) of characters that are &amp;quot;&amp;#039;&amp;#039;not&amp;#039;&amp;#039; (&amp;lt;kbd&amp;gt;^&amp;lt;/kbd&amp;gt;) a right curly bracket&amp;quot;; in other words it will &amp;#039;&amp;#039;precede&amp;#039;&amp;#039; a right curly bracket.&lt;br /&gt;
* The template &amp;#039;&amp;#039;Name&amp;#039;&amp;#039; follows a left curly bracket, and is case insensitive.&lt;br /&gt;
* A pipe &amp;lt;kbd&amp;gt;\|&amp;lt;/kbd&amp;gt; (&amp;lt;code&amp;gt;\{{tl|!}}&amp;lt;/code&amp;gt;) follows the name, but makes allowance for one possible character in between, the dot. &lt;br /&gt;
* The dot &amp;lt;kbd&amp;gt; . &amp;lt;/kbd&amp;gt; can match any character, including the &amp;quot;zero or one&amp;quot; (&amp;lt;kbd&amp;gt;?&amp;lt;/kbd&amp;gt;) newline characters that will match the case where the initial pipe is put on its own line, such as how the citation and infobox templates are often transcluded (or &amp;quot;called&amp;quot;). &lt;br /&gt;
This template &amp;#039;&amp;#039;cannot&amp;#039;&amp;#039; make that pattern with the &amp;lt;kbd&amp;gt;.?&amp;lt;/kbd&amp;gt; because in general there are many template names that only differ by the last letter, (such as the [[Template:tl#General-purpose formatting|tl]] family of template names). But to match the particular case where the template&amp;#039;s first parameter starts after a newline you have to match that newline with a dot.  You can modify the query and add that &amp;lt;kbd&amp;gt; .? &amp;lt;/kbd&amp;gt; for searches for Infobox and Cite templates. Because &amp;lt;code&amp;gt;?&amp;lt;/code&amp;gt; counts zero as a match, it will also work where the pipe is on the same line.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* {{tl|Regex}}&lt;br /&gt;
* [[User:John of Reading/Typo fixing with AutoWikiBrowser|One power user&amp;#039;s AutoWikiBrowser]]&lt;br /&gt;
&lt;br /&gt;
== Notes ==&lt;br /&gt;
{{reflist}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;includeonly&amp;gt;{{Sandbox other||&lt;br /&gt;
&amp;lt;!-- Categories below this line, please; interwikis at Wikidata --&amp;gt;&lt;br /&gt;
[[Category:Search templates]]&lt;br /&gt;
&lt;br /&gt;
}}&amp;lt;/includeonly&amp;gt;&lt;/div&gt;</summary>
		<author><name>174.89.12.36</name></author>
	</entry>
</feed>