Till the time this feature is officially implemented by SE, I made this short script (based off rene's related one) that searches your flags by the content of your flag message. You can specify a search regex, and the maximum number of pages to check too!
When the script finishes, it simply empties the current page and then replaces it with the contents of the search results.
// paste this in DevTools (F12)
// to be run on a https://SE_SITE.com/users/flag-summary/USER_ID page
// @name Search flag summary by RegEx
// @version 1.0.0
// @author GaurangTandon
(function() {
var REGEX_TO_MATCH = /answer/,
// set to -1 to check all pages
MAX_PAGES_TO_CHECK = 3,
matchedPosts = [],
mainbar = $(document.getElementById("mainbar"));
function finished(){
mainbar.empty();
mainbar.append(matchedPosts);
console.log("finished processing all pages");
}
// gets the page given by pagenumber
function fetchPage(pageNumber) {
if(MAX_PAGES_TO_CHECK != -1 && pageNumber > MAX_PAGES_TO_CHECK) return finished();
// take the query parameter, create an array, remove the page parameter
// this retains the users current setting (for `group` and `status`)
var s = document.location.search.split('&').filter(query => query.indexOf("page") === -1);
// next page to fetch
s.push('page=' + pageNumber);
// get the html
$.get(document.location.pathname + s.join("&").replace(/^\&/, "?"), function(data) {
var flaggedPosts = $(data).find(".flagged-post"), flagMsgText;
// this is an empty page, we're done!
if(flaggedPosts.length === 0) {
return finished();
}
flaggedPosts.each(function() {
flagMsgText = Array.prototype.map.call(this.querySelectorAll(".revision-comment"), x => x.textContent);
if(REGEX_TO_MATCH.test(flagMsgText)) {
matchedPosts.push(this);
}
});
console.log("finished page " + pageNumber);
// schedule the next fetch in 2000 ms
setTimeout(fetchPage, 2000, pageNumber + 1);
});
}
// start at page 1
fetchPage(1);
console.log("Listing flags:");
})();