正则表达式示例中使用的此在线示例中的 DisplayRow 函数从我的数据文件中获取一行输入,并显示结果表的一行的 HTML。
我想修改函数,以便可以将名称显示为电子邮件链接,使其看起来像 userid@ccsf.edu,其中名称“Thomas, Boegel”将为 tboegel。
我的问题:我在 preg_replace 中的正则表达式模式有什么问题,为什么名称没有更新。
我有一些代码在表格最右侧的变量 $parts 内的数组中显示名称。这是我需要更改的代码:
for ($i = 10; $i < count($parts); $i += 1) {
print preg_replace('/^([a-z]+), ([a-z])[a-z]*/i','<a href="mailto:$2$1@ccsf.edu">/a>', $parts[$i]);
}
这是整个功能。我只需要上面代码块的帮助。只有几个名字,它们都采用相同的格式 jole, billy,我正在尝试在电子邮件链接中将其更改为 jbilly。
function DisplayRow($target) {
print "<tr>\n";
$parts = split(" +", $target);
for ($i = 0; $i < 10; $i+=1) {
print "<td>$parts[$i]</td>\n";
}
print "<td>\n";
for ($i = 10; $i < count($parts); $i += 1) {
print preg_replace('/([a-z]+), ([a-z])[a-z]*/i', '<a href="mailto:$2$1@ccsf.edu"> </a>', $parts[$i]);
}