求:解析html entity的VFP优雅算法。
*--------------------源字符串(html entity):
这是一个例子,this is a example
目标字符串(UTF16-LE或UTF-8):
这是一个例子,this is a example
*--------------------
算法本身其实也不复杂。唯,html entity的英文字符其实是ANSI(能兼容UTF-8),故而将目标字符串统一转换为UTF-8,可能会更方便、也更合理一些。
因源字符是Unicode BE的十进制值,故而整个算法需执行几次转换:
1、遍历源字符串,STREXTRACT( );
2、循环,逐字判断中英文,若英文,直接chr( );
3、若中文:UTF16-BE数值 TO UTF16-LE数值;
4、统一转为UTF-8。
网上抄的Python,只需一个如此简单的函数:
def convHTML(string):
hexL = [hex(int(c.strip(''))).replace('0x', '') for c in string.split(';')]
return bytes.fromhex(' '.join(hexL)).decode('utf-16be')
故而,有些好奇,VFP能否逼出一个类似的特别优雅的转换函数?