If you use Bookmark+ then you can tag files with arbitrary strings, including strings containing whitespace.
There are commands for accessing files with tags all of which, or some of which, match a given regexp. The matching is against each tag separately, so there's no problem such as you report for image-dired tags.
For example, command
bmkp-autofile-all-tags-regexp-jump, bound by default to
C-x j t a % *:
bmkp-autofile-all-tags-regexp-jump is an interactive compiled Lisp
(bmkp-autofile-all-tags-regexp-jump REGEXP BOOKMARK)
Jump to an autofile
BOOKMARK in this dir that has each tag matching
You are prompted for the
Then you are prompted for the
BOOKMARK (with completion).
Bookmark+ commands pertaining to tags are by default on prefix key
C-x x t — use
C-x x t C-h to see them.
And the keys on that prefix by default follow a mnemonic pattern. For example the key sequence
C-x j t a % * uses these mnemonics:
j means it's a bookmark jump command (visit the bookmarked file)
t means it's a tags command
a means it's an autofile command, that is, the bookmark is an autofile: a file wrapper, and its name is the file name
% means that the command prompts for a regexp (to match tags)
In the bookmark list (buffer
*Bookmark List*), commands pertaining to tags are on prefix key
T — use
T C-h to see them. For example, you can mark and unmark the bookmarks that have tags matching various patterns.