For example, I have a word “diagonalization”. I want the search effective after I input “diagonal”. In this way, it will be very convenient for me to search the notes as sometimes we might not come up with the exact word we used.
You can get this by typing “diag*”. But that only completes to the end of the word
Great. Thanks, I didn’t know it supports regular expression.
It's not quite regex. For reference, searching is explained here.
EDIT:
Apparently users are searching the forum and clicking on the above link which, following the site update, no longer works.
This is the new location of the information on searching:
This does still seem to be the case - on purpose or a feature not yet fully implemented ? It seems unusual, even counterintuitive when yo cannot find anyone and you. Few users will remember using the wildcard, in particular when it doesn't work anywhere.
Any updates on this issue?! Search using regex in all notes would be awesome!
I have a collection of notes representing people. The title of each note is a person's first and last name (e.g., John Doe, Jane Doe, Donny John). I'd like to create a search that finds all of the notes starting with a specific letter (say "J") for the first word of the note title (first name) but not the second word (last name). I've tried the following but it doesn't seem to work:
title:"J*"
This returns three results (instead of the expected two):
- Jon Doe
- Jane Doe
- Donny John - not wanted
Is there away to achieve this in Joplin? Thanks in advance for your help.
I would say no, because the text search always looks at every word. But there is no option that says search only in the first word of the title.
Hi,
with this syntax ^joh*
, I find all the notes whose title or one of the lines starts with the mentioned characters, case insensitive.
With this syntax title:^v*
, I find all notes whose title starts with "v", case insensitive.
Tip: quotes are optional.
edit : Joplin 2.4.12 (prod, darwin)
I'm using Keyboard Maestro macro that prompts for a search term, then appends an asterisk to each word. This effectively turns search into always being by partial words. Thought I would share in case it's useful to anyone else (it's pretty simple but very useful to me, moving over from OneNote).
Typing "jop he" will convert to "jop* he*" before inserting it into the search box and submitting, which would find a page like "Joplin Help."
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Actions</key>
<array>
<dict>
<key>ActionUID</key>
<integer>41298</integer>
<key>Buttons</key>
<array>
<dict>
<key>Button</key>
<string>OK</string>
</dict>
<dict>
<key>Button</key>
<string>Cancel</string>
<key>Cancel</key>
<true/>
</dict>
</array>
<key>MacroActionType</key>
<string>PromptForUserInput</string>
<key>Prompt</key>
<string></string>
<key>TimeOutAbortsMacro</key>
<true/>
<key>Title</key>
<string>Joplin Search</string>
<key>Variables</key>
<array>
<dict>
<key>Default</key>
<string></string>
<key>Type</key>
<string>Automatic</string>
<key>Variable</key>
<string>JoplinSearchTerm</string>
</dict>
</array>
</dict>
<dict>
<key>Action</key>
<string>IgnoreCaseRegEx</string>
<key>ActionUID</key>
<integer>41312</integer>
<key>MacroActionType</key>
<string>SearchReplace</string>
<key>Replace</key>
<string>$1*</string>
<key>Search</key>
<string>(\w+)</string>
<key>Source</key>
<string>Variable</string>
<key>Variable</key>
<string>JoplinSearchTerm</string>
<key>Which</key>
<string>All</string>
</dict>
<dict>
<key>ActionUID</key>
<integer>39218</integer>
<key>AllWindows</key>
<true/>
<key>AlreadyActivatedActionType</key>
<string>Normal</string>
<key>Application</key>
<dict>
<key>BundleIdentifier</key>
<string>net.cozic.joplin-desktop</string>
<key>Name</key>
<string>Joplin</string>
<key>NewFile</key>
<string>/Applications/Joplin.app</string>
</dict>
<key>MacroActionType</key>
<string>ActivateApplication</string>
<key>ReopenWindows</key>
<false/>
<key>TimeOutAbortsMacro</key>
<true/>
</dict>
<dict>
<key>ActionUID</key>
<integer>39228</integer>
<key>KeyCode</key>
<integer>14</integer>
<key>MacroActionType</key>
<string>SimulateKeystroke</string>
<key>Modifiers</key>
<integer>768</integer>
<key>ReleaseAll</key>
<false/>
<key>TargetApplication</key>
<dict/>
<key>TargetingType</key>
<string>Front</string>
</dict>
<dict>
<key>Action</key>
<string>ByTyping</string>
<key>ActionUID</key>
<integer>41301</integer>
<key>MacroActionType</key>
<string>InsertText</string>
<key>TargetApplication</key>
<dict/>
<key>TargetingType</key>
<string>Front</string>
<key>Text</key>
<string>%Variable%JoplinSearchTerm%</string>
</dict>
<dict>
<key>ActionUID</key>
<integer>41306</integer>
<key>KeyCode</key>
<integer>36</integer>
<key>MacroActionType</key>
<string>SimulateKeystroke</string>
<key>Modifiers</key>
<integer>0</integer>
<key>ReleaseAll</key>
<false/>
<key>TargetApplication</key>
<dict/>
<key>TargetingType</key>
<string>Front</string>
</dict>
<dict>
<key>ActionUID</key>
<integer>41315</integer>
<key>MacroActionType</key>
<string>SetVariableToText</string>
<key>Text</key>
<string></string>
<key>Variable</key>
<string>JoplinSearchTerm</string>
</dict>
</array>
<key>CreationDate</key>
<real>659446312.36553395</real>
<key>ModificationDate</key>
<real>727382435.63041794</real>
<key>Name</key>
<string>Joplin - Search All </string>
<key>Triggers</key>
<array>
<dict>
<key>FireType</key>
<string>Pressed</string>
<key>KeyCode</key>
<integer>14</integer>
<key>MacroTriggerType</key>
<string>HotKey</string>
<key>Modifiers</key>
<integer>6912</integer>
</dict>
</array>
<key>UID</key>
<string>E094EBEA-B8BE-45EC-B71E-6EE61C71B160</string>
</dict>
</plist>