mirror of
https://github.com/Jermolene/TiddlyWiki5
synced 2024-09-18 02:09:43 +00:00
b6ce353a7d
* fix: resolved search-replace operator bug with $ character in replacement strings, added test and more examples * fix: reset regexp after each title
39 lines
1.4 KiB
Plaintext
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}}
|