sprintf()
can be used to break the string up so that the translatable string can be isolated from the HTML:
function new_excerpt_more( $more ) {
return sprintf( '<a href="https://wordpress.stackexchange.com/questions/206823/%1$s"><span class="readmore">%2$s</span></a>',
get_permalink( get_the_ID() ),
__( 'Read More', 'your-textdomain' )
);
}
add_filter( 'excerpt_more', 'new_excerpt_more' );