对于普通话学习工具,我想为单词中的每个中文“字符”创建链接。例如,我有中文单词“自行车”(自行车)。然后我想让这三个字符中的每一个都“可点击”。
$word = '自行车';
输出应该是:
$output = "<a href='?char=自'>自</a>
<a href='?char=行'>行</a>
<a href='?char=车'>车</a>";
有谁知道如何做到这一点?
使用此正则表达式,您可以拆分字符。
preg_split('//u', "自行车", null, PREG_SPLIT_NO_EMPTY);
结果是三个字符的数组。
您可以使用preg_replace
正则表达式替换中文字符,/(\p{Han})/u
然后将其替换为您需要的内容。
preg_replace("/(\p{Han})/u","<a href='?char=$1'>$1</a>",'ss自行车ss');
输出:
ss<a href='?char=自'>自</a><a href='?char=行'>行</a><a href='?char=车'>车</a>ss
您可以在 for 循环中提取字符并生成锚标记。
<a href='<link?char=<extracted char>'><extracted char></a>