FormattedSearch (r1.1 vs. r1.3)

Webs: Faemalia -:- Greatprawn -:- Playground -:- Technical -:- Tweak
Tweak Web Sections: Register -:- Changes -:- Index -:- Search -:- Go

 <<O>>  Difference Topic FormattedSearch (r1.3 - 02 Dec 2001 - MikeMannix?)

META TOPICPARENT TWikiVariables
Deleted:
<
<
Formatted Search Using %SEARCH{... format="..."}% Variable

TOC: No TOC in "Tweak.FormattedSearch"
Added:
>
>

TWiki Formatted Search Results

Inline search feature allows flexible formatting of search result


Changed:
<
<

Preface

>
>

Overview


By default, the format for displaying a search result is fixed, e.g. a table with rows of topic name and topic summary. Use the format="..." parameter to specify a customized format of the search result. The string of the format parameter is typically a bullet list or table row containing variables (i.e. %SEARCH{ "food" format="| $topic | $summary |" }%).


 <<O>>  Difference Topic FormattedSearch (r1.2 - 29 Nov 2001 - PeterThoeny?)

META TOPICPARENT TWikiVariables
Formatted Search Using %SEARCH{... format="..."}% Variable
Line: 14 to 14

1. header="..." parameter

Changed:
<
<
Use the header paramter to specify the header of a search result. It should correspond to the format of the format parameter. This parameter is optional. I.e. header="| *Topic:* | *Summary:* |"
>
>
Use the header paramter to specify the header of a search result. It should correspond to the format of the format parameter. This parameter is optional. I.e.
header="| *Topic:* | *Summary:* |"

2. format="..." parameter

Changed:
<
<
Use the format paramter to specify the format of one search hit. I.e. format="| $topic | $summary |"
>
>
Use the format paramter to specify the format of one search hit. I.e.
format="| $topic | $summary |"

Variables that can be used in the format string:

Name: Expands To:
Added:
>
>
$n New line

$web Name of the web
$topic Topic name
$locked LOCKED flag (if any)
Changed:
<
<
$date Time stamp of last topic update
>
>
$date Time stamp of last topic update, i.e. 06 Jan 2009 - 19:39
$isodate Time stamp of last topic update, i.e. 2009-01-06T19:39Z

$rev Number of last topic revision, i.e. 1.4
$wikiusername Wiki user name of last topic update, i.e. Faemalia.JohnSmith
Added:
>
>
$username User name of last topic update, i.e. JohnSmith

$summary Topic summary
Changed:
<
<
$formfield(name) The field value of a form field, i.e. $formfield(TopicClassification?) would get expanded to PublicFAQ. This applies only to topics that have a TWikiForm
>
>
$formfield(name) The field value of a form field, i.e. $formfield(TopicClassification) would get expanded to PublicFAQ. This applies only to topics that have a TWikiForm

$pattern(reg-exp) A regular expression pattern to extract some text from a topic, i.e. $pattern(.*?\*.*?Email\:\s*([^\n\r]+).*) extracts the email address from a bullet of format * Email: ....

Note: For $pattern(reg-exp), specify a RegularExpression that scans from start to end and contains the text you want to keep in parenthesis, i.e. $pattern(.*?(from here.*?to here).*). You need to make sure that the integrity of a web page is not compromised, i.e. if you include a table make sure to include everything including the table end tag.

Line: 52 to 55

Write this in the Know web:

| *Topic:* | *OperatingSystem:* | *OsVersion:* |

Changed:
<
<
%SEARCH{ "[T]opicClassification.*?value=\"[P]ublicFAQ\"" scope="text" regex="on" nosearch="on" nototal="on" format="| [[$topic]] | $formfield(OperatingSystem?) | $formfield(OsVersion?) |" }%
>
>
%SEARCH{ "[T]opicClassification.*?value=\"[P]ublicFAQ\"" scope="text" regex="on" nosearch="on" nototal="on" format="| [[$topic]] | $formfield(OperatingSystem) | $formfield(OsVersion) |" }%

To get this:

Line: 79 to 82

Changed:
<
<
-- PeterThoeny? - 24 Oct 2001
>
>
-- PeterThoeny? - 28 Nov 2001

 <<O>>  Difference Topic FormattedSearch (r1.1 - 25 Oct 2001 - PeterThoeny?)
Line: 1 to 1
Added:
>
>
META TOPICPARENT TWikiVariables
Formatted Search Using %SEARCH{... format="..."}% Variable

Preface

By default, the format for displaying a search result is fixed, e.g. a table with rows of topic name and topic summary. Use the format="..." parameter to specify a customized format of the search result. The string of the format parameter is typically a bullet list or table row containing variables (i.e. %SEARCH{ "food" format="| $topic | $summary |" }%).

Syntax

Two paramters can be used to specify a customized search result:

1. header="..." parameter

Use the header paramter to specify the header of a search result. It should correspond to the format of the format parameter. This parameter is optional. I.e. header="| *Topic:* | *Summary:* |"

2. format="..." parameter

Use the format paramter to specify the format of one search hit. I.e. format="| $topic | $summary |"

Variables that can be used in the format string:

Name: Expands To:
$web Name of the web
$topic Topic name
$locked LOCKED flag (if any)
$date Time stamp of last topic update
$rev Number of last topic revision, i.e. 1.4
$wikiusername Wiki user name of last topic update, i.e. Faemalia.JohnSmith
$summary Topic summary
$formfield(name) The field value of a form field, i.e. $formfield(TopicClassification?) would get expanded to PublicFAQ. This applies only to topics that have a TWikiForm
$pattern(reg-exp) A regular expression pattern to extract some text from a topic, i.e. $pattern(.*?\*.*?Email\:\s*([^\n\r]+).*) extracts the email address from a bullet of format * Email: ....

Note: For $pattern(reg-exp), specify a RegularExpression that scans from start to end and contains the text you want to keep in parenthesis, i.e. $pattern(.*?(from here.*?to here).*). You need to make sure that the integrity of a web page is not compromised, i.e. if you include a table make sure to include everything including the table end tag.

Examples

Bullet list showing topic name and summary

Write this:

%SEARCH{ "FAQ" scope="topic" nosearch="on" nototal="on" header="   * *Topic: Summary:*" format="   * [[$topic]]: $summary" }%

To get this:

  • Topic: Summary:
  • TWikiFAQ: Frequently Asked Questions About TWiki This is a real FAQ, and also a demo of one easily implemented knowledge base solution. See how it's done, click Edit . SEARCH ...
  • TWikiFaqTemplate: FAQ: Answer: Back to: NOP TWikiFAQ WIKIUSERNAME DATE
  • TextFormattingFAQ: Text Formatting FAQ The most frequently asked questions about text formatting are answered. Also, TextFormattingRules contains the complete TWiki shorthand system ...

Table showing form field values of topics with a form

Write this in the Know web:

| *Topic:* | *OperatingSystem:* | *OsVersion:* |
%SEARCH{ "[T]opicClassification.*?value=\"[P]ublicFAQ\"" scope="text" regex="on" nosearch="on" nototal="on" format="| [[$topic]] | $formfield(OperatingSystem?) | $formfield(OsVersion?) |" }%

To get this:

Topic: OperatingSystem: OsVersion:
IncorrectDllVersionW32PTH10DLL OsWin 95/98
WinDoze95Crash OsWin 95

Extract some text from a topic using regular expression

Write this:

%SEARCH{ "__Back to\:__ TWikiFAQ" scope="text" regex="on" nosearch="on" nototal="on" header="TWiki FAQs:" format="   * $pattern(.*?FAQ\:[\n\r]*([^\n\r]+).*) [[$topic][Answer...]]" }%

To get this:

-- PeterThoeny? - 24 Oct 2001


View -:- Diffs | r1.3 | > | r1.2 | > | r1.1 -:- More

Revision r1.1 - 25 Oct 2001 - 02:13 - PeterThoeny?
Revision r1.3 - 02 Dec 2001 - 12:33 - MikeMannix?
Copyright © 2002 by the Author of the article. All material on this collaboration tool is the property of the contributing authors.