XML
<xml>
<date>令和2年7月1日</date>
<date>令和元年3月13日</date>
<date>平成31年1月1日</date>
</xml>
XSLT
xsltは一文字ずつしか置換できない・・・
<xsl:sort select="substring-after(translate(translate(translate(
substring-before(./date,'年'),'和','3'),'元','1'),'令','成'),'成')" />
平成と比べるには令和に30足せばよいので、和の字を3にする⇒元の字を1にする。
年と成で切り取れればいいので、令を成に変更する。
令和2年 ⇒ 令32年 ⇒ 成32年
令和元年 ⇒ 令3元年 ⇒ 令31年 ⇒ 成31年
平成31年
年の前の文字、成の後の文字で切り取る。