 			# Image substitution – “.. |foo| image:: ./path/to/image.png”
 			{
 				name: "meta.substitution-definition.image.restructuredtext"
-				begin: "^(\\s*)(\\.\\.)\\s(\\|)(?=\\S)([^\\|]+)((?<=\\S)\\|)\\s+(image)(::)\\s*(\\S+)"
+				begin: "^(\\s*)(\\.\\.)\\s+(\\|)(?=[^|\\s])(.+?)((?<=\\S)\\|)\\s+(image)(::)\\s*(\\S+)"
 				end:   "^(?!\\s*$|\\1[ \\t]+\\S)"
 				patterns: [include: "#image-options"]
 				beginCaptures:

			{include: "#emphasis"}
			{include: "#link-target-inline"}
			{include: "#interpreted-text"}
			{include: "#substitution"}
			{include: "#literal"}
			{include: "#link-reference"}
			{include: "#footnote"}

			# Generic/custom definition – “.. |foo| something else:: …”
			{
				name: "meta.substitution-definition.restructuredtext"
				begin: "^(\\s*)(\\.\\.)\\s+(\\|)(?=[^|\\s])(.+?)((?<=\\S)\\|)\\s+(\\S+.*(?=::))(::)(.*)"
				end:   "^(?!\\s*$|\\1[ \\t]+\\S)"
				patterns: [include: "#directive-options"]
				beginCaptures:
