TWiki home TWiki.Tukro > TWiki > FormattedSearch (r1.12 vs. r1.13) TWiki.Tukro webs:
Main | TWiki | Know | Sandbox
TWiki . { Welcome | Register | Changes | Topics | Index | Search | Go }
 <<O>>  Difference Topic FormattedSearch (r1.13 - 17 Mar 2004 - PeterThoeny)
Line: 1 to 1
Changed:
<
<
META TOPICINFO PeterThoeny date="1071560368" format="1.0" version="1.12"
>
>
META TOPICINFO PeterThoeny date="1079506500" format="1.0" version="1.13"

META TOPICPARENT TWikiVariables
TOC: No TOC in "TWiki.FormattedSearch"
Line: 24 to 24

Variables that can be used in the format string:

Name: Expands To:
Changed:
<
<
$web Name of the web(s), separated by commas, or 'all'
>
>
$web Name of the web

$topic Topic name
$topic(20) Topic name, "- " hyphenated each 20 characters
$topic(30, -<br />) Topic name, hyphenated each 30 characters with separator "-<br />"
$topic(40, ...) Topic name, shortended to 40 characters with "..." indication
$text Formatted topic text. In case of a multiple="on" search, it is the line found for each search hit.
$locked LOCKED flag (if any)
Changed:
<
<
$date Time stamp of last topic update, like 23 Dec 2024 - 12:16
$isodate Time stamp of last topic update, like 2024-12-23T12:16Z
$rev Number of last topic revision, like 1.4
$username Login name of last topic update, like jsmith
$wikiname Wiki user name of last topic update, like JohnSmith
>
>
$date Time stamp of last topic update, e.g. 23 Dec 2024 - 12:16
$isodate Time stamp of last topic update, e.g. 2024-12-23T12:16Z
$rev Number of last topic revision, e.g. 1.4
$username Login name of last topic update, e.g. jsmith
$wikiname Wiki user name of last topic update, e.g. JohnSmith

$wikiusername Wiki user name of last topic update, like Main.JohnSmith
Added:
>
>
$createdate Time stamp of topic revision 1.1
$createusername Login name of topic revision 1.1, e.g. jsmith
$createwikiname Wiki user name of topic revision 1.1, e.g. JohnSmith
$createwikiusername Wiki user name of topic revision 1.1, e.g. Main.JohnSmith

$summary Topic summary
Added:
>
>
$formname The name of the form attached to the topic; empty if none

$formfield(name) The field value of a form field; for example, $formfield(TopicClassification) would get expanded to PublicFAQ. This applies only to topics that have a TWikiForm
$formfield(name, 10) Form field value, "- " hyphenated each 10 characters
$formfield(name, 20, -<br />) Form field value, hyphenated each 20 characters with separator "-<br />"
$formfield(name, 30, ...) Form field value, shortended to 30 characters with "..." indication
Changed:
<
<
$pattern(reg-exp) A regular expression pattern to extract some text from a topic. In case of a multiple="on" search, the pattern is applied to the line found in each search hit. For example, $pattern(.*?\*.*?Email\:\s*([^\n\r]+).*) extracts the email address from a bullet of format * Email: ....
>
>
$pattern(reg-exp) A regular expression pattern to extract some text from a topic (does not search meta data; use $formfield instead). In case of a multiple="on" search, the pattern is applied to the line found in each search hit. The pattern must cover the whole text (topic or line). For example, $pattern(.*?\*.*?Email\:\s*([^\n\r]+).*) extracts the email address from a bullet of format * Email: .... This example has non-greedy .*? patterns to scan for the first occurance of the Email bullet; use greedy .* patterns to scan for the last occurance.

$n or $n() New line
$nop or $nop() Is a "no operation". This variable gets removed; useful for nested search
$quot Double quote ("). Alternatively write \" to escape it
Line: 110 to 115

  • First search:
    • %SEARCH{ "culture" format="   * $topic is referenced by: (list all references)" nosearch="on" nototal="on" }%
  • Second search. For each hit we want this search:
Changed:
<
<
    • %SEARCH{ "(topic found in first search)" format="   $topic" nosearch="on" nototal="on" }%
>
>
    • %SEARCH{ "(topic found in first search)" format="$topic" nosearch="on" nototal="on" separator=", " }%

  • Now let's nest the two. We need to escape the second search, e.g. the first search will build a valid second search string. Note that we escape the second search so that it does not get evaluated prematurely by the first search:
    • Use $percnt to escape the leading percent of the second search
    • Use \" to escape the double quotes
Line: 119 to 124

Write this:

Changed:
<
<
%SEARCH{ "culture" format="   * $topic is referenced by:$n      * $percntSEARCH{ \"$topic\" format=\"   $dollartopic\" nosearch=\"on\" nototal=\"on\" }$nop%" nosearch="on" nototal="on" }%
>
>
%SEARCH{ "culture" format="   * $topic is referenced by:$n      * $percntSEARCH{ \"$topic\" format=\"$dollartopic\" nosearch=\"on\" nototal=\"on\" separator=\", \" }$nop%" nosearch="on" nototal="on" }%

To get this:

Changed:
<
<
>
>

Most recently changed pages

Line: 135 to 140

WebStatistics TWikiGuest 04 Aug 2005 - 18:18
WebNotify MauricioVieira 24 Jun 2004 - 18:09
TWikiRegistration TWikiGuest 24 Jun 2004 - 17:20
TWikiPreferences TWikiGuest 24 Jun 2004 - 17:17
TWikiVariables PeterThoeny 09 May 2004 - 07:41
EditTablePlugin PeterThoeny 09 May 2004 - 07:21
TWikiContributor PeterThoeny 09 May 2004 - 06:50
Added:
>
>

Embedding search forms to return a formatted result

Use an HTML form and an embedded formatted search on the same topic. You can link them together with an %URLPARAM{"..."}% variable. Example:

Write this:

<form action="%SCRIPTURLPATH%/view%SCRIPTSUFFIX%/%WEB%/%TOPIC%">
Find Topics: 
<input type="text" name="q" size="32" value="%URLPARAM{"q"}%" />
<input type="submit" value="Search" />
</form>
Result:
%SEARCH{ search="%URLPARAM{"q"}%" format="   * $web.$topic: %BR% $summary" nosearch="on" }%

To get this:

Find Topics:
Result: Number of topics: 0

-- TWiki:Main.PeterThoeny - 16 Mar 2004



Topic FormattedSearch . { View | Diffs | r1.14 | > | r1.13 | > | r1.12 | More }
Revision r1.12 - 16 Dec 2003 - 07:39 - PeterThoeny
Revision r1.13 - 17 Mar 2004 - 06:55 - PeterThoeny
Copyright © 1999-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki.Tukro? Send feedback.