diff --git a/DESCRIPTION b/DESCRIPTION
index 7218d88..9f0b936 100644
--- a/DESCRIPTION
+++ b/DESCRIPTION
@@ -27,7 +27,8 @@
     htmlwidgets,
     utils,
     httr,
-    methods
+    methods,
+    PTXQC
 Collate: 
     'KorAPConnection.R'
     'KorAPCorpusStats.R'
diff --git a/NAMESPACE b/NAMESPACE
index 404af0c..86db8dc 100644
--- a/NAMESPACE
+++ b/NAMESPACE
@@ -12,6 +12,7 @@
 export(group_by)
 export(ipm)
 export(mutate)
+export(queryStringToLabel)
 export(select)
 export(summarise)
 export(tidy)
@@ -36,6 +37,8 @@
 import(keyring)
 import(methods)
 import(utils)
+importFrom(PTXQC,lcpCount)
+importFrom(PTXQC,lcsCount)
 importFrom(broom,tidy)
 importFrom(dplyr,.data)
 importFrom(dplyr,bind_cols)
diff --git a/R/misc.R b/R/misc.R
index b90841e..26ae123 100644
--- a/R/misc.R
+++ b/R/misc.R
@@ -21,6 +21,35 @@
     mutate(ipm = .data$f * 10^6, conf.low = .data$conf.low * 10^6, conf.high = .data$conf.high * 10^6)
 }
 
+#' Convert query or vc strings to plot labels
+#'
+#' Converts a vector of query or vc strings to typically appropriate legend labels
+#' by clipping off prefixes and suffixes that are common to all query strings.
+#'
+#' @param data string or vector of query or vc definition strings
+#' @return string or vector of strings with clipped off common prefixes and suffixes
+#'
+#' @examples
+#' queryStringToLabel(paste("textType = /Zeit.*/ & pubDate in", c(2010:2019)))
+#' queryStringToLabel(c("[marmot/m=mood:subj]", "[marmot/m=mood:ind]"))
+#' queryStringToLabel(c("wegen dem [tt/p=NN]", "wegen des [tt/p=NN]"))
+#'
+#' @importFrom PTXQC lcpCount
+#' @importFrom PTXQC lcsCount
+#'
+#' @export
+queryStringToLabel <- function(data) {
+  leftCommon = lcpCount(data)
+  while (leftCommon > 0 && grepl("[[:alnum:]]", substring(data[1], leftCommon, leftCommon))) {
+    leftCommon <- leftCommon - 1
+  }
+  rightCommon = lcsCount(data)
+  while (rightCommon > 0 && grepl("[[:alnum:]]", substring(data[1], rightCommon, rightCommon))) {
+    rightCommon <- rightCommon - 1
+  }
+  substring(data, leftCommon + 1, nchar(data) - rightCommon)
+}
+
 
 ## Mute notes: "Undefined global functions or variables:"
 globalVariables(c("conf.high", "conf.low", "onRender", "webUIRequestUrl"))
diff --git a/demo/mosaicplot.R b/demo/mosaicplot.R
index d0d16ae..c8bf16b 100644
--- a/demo/mosaicplot.R
+++ b/demo/mosaicplot.R
@@ -7,19 +7,6 @@
 library(vcd)
 library(tibble)
 library(dplyr)
-library(PTXQC)
-
-queryStringToLabel <- function(data) {
-  leftCommon = lcpCount(data)
-  while (leftCommon > 0 && grepl("[[:alpha:]]", substring(data[1], leftCommon, leftCommon))) {
-    leftCommon <- leftCommon - 1
-  }
-  rightCommon = lcsCount(data)
-  while (rightCommon > 0 && grepl("[[:alpha:]]", substring(data[1], rightCommon, rightCommon))) {
-    rightCommon <- rightCommon - 1
-  }
-  substring(data, leftCommon + 1, nchar(data) - rightCommon)
-}
 
 mosaicplot <- function(query, vc, kco = new("KorAPConnection", verbose = TRUE)) {
   frequencyQuery(
diff --git a/man/queryStringToLabel.Rd b/man/queryStringToLabel.Rd
new file mode 100644
index 0000000..2381651
--- /dev/null
+++ b/man/queryStringToLabel.Rd
@@ -0,0 +1,24 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/misc.R
+\name{queryStringToLabel}
+\alias{queryStringToLabel}
+\title{Convert query or vc strings to plot labels}
+\usage{
+queryStringToLabel(data)
+}
+\arguments{
+\item{data}{string or vector of query or vc definition strings}
+}
+\value{
+string or vector of strings with clipped off common prefixes and suffixes
+}
+\description{
+Converts a vector of query or vc strings to typically appropriate legend labels
+by clipping off prefixes and suffixes that are common to all query strings.
+}
+\examples{
+queryStringToLabel(paste("textType = /Zeit.*/ & pubDate in", c(2010:2019)))
+queryStringToLabel(c("[marmot/m=mood:subj]", "[marmot/m=mood:ind]"))
+queryStringToLabel(c("wegen dem [tt/p=NN]", "wegen des [tt/p=NN]"))
+
+}
