1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2024-07-03 18:53:28 +00:00
TiddlyWiki5/editions/tw5.com/tiddlers/filters/examples/search-replace Operator (Examples).tid
Saq Imtiaz b6ce353a7d
Fix: resolved search-replace operator regexp encoding bug (#6162)
* fix: resolved search-replace operator bug with $ character in replacement strings, added test and more examples

* fix: reset regexp after each title
2021-11-01 13:24:30 +00:00

39 lines
1.4 KiB
Plaintext

created: 20201107112846692
modified: 20211101125225197
tags: [[Operator Examples]] [[search-replace Operator]]
title: search-replace Operator (Examples)
type: text/vnd.tiddlywiki
\define myregexp() e|o
\define myregexp2() ^(?!Unlike).*$
\define names() (\w+)\s(\w+)
Replace one string with another:
<<.operator-example 1 """[[The quick brown fox jumps over the lazy dog]search-replace[dog],[cat]]""">>
Replace all matches of a regular expression:
`\define myregexp() e|o`
<<.operator-example 2 """[[Hello There]search-replace:g:regexp<myregexp>,[]]""">>
Replace all matches of a string irrespective of case:
<<.operator-example 3 """[[Hello There]search-replace:gi[H],[]]""">>
You can also use regular expression capture groups in the replacement string:
`\define names() (\w+)\s(\w+)`
<<.operator-example 4 """[[John Smith]search-replace::regexp<names>,[$2,$1]]""" >>
You can reference the portion of the input that matches the regular expression with `$&`:
<<.operator-example 5 """[[John Smith]search-replace::regexp[John .*],[His name is $&]]""">>
<<.operator-example 6 """[[This is an exciting feature]search-replace::regexp[exciting],[amazing and $&]]""">>
To replace everything but a match using a regular expression and the ''multiline'' (m) flag:
`\define myregexp2() ^(?!Unlike).*$`
<<.operator-example 7 """[[HelloThere]get[text]search-replace:gm:regexp<myregexp2>,[]]""">>
{{How to remove stop words}}