更改 preg_match 条件

Changing preg_match condition

我的功能正在改变$word_one(je/queje in j'/que j'),如果$word_two以元音开头。

function FrenchCompoundTenses($word_one, $word_two) {
if(preg_match('~(.*)\bje$~ui', $word_one, $m) && preg_match('~^[aeéiou]~ui>', $word_two)) 
    return "<td class=\"text-right text-muted\">{$m[1]}j'</td>" . $word_two;               
else 
    return "<td class=\"text-right text-muted\">". $word_one ."</td>" . $word_two;
}  

为了实现类似的功能,我必须更改这部分:

&& preg_match('~^[aeéiou]~ui>', $word_two)

如果 $word_two 以 HTML 代码 <u></td><td> 开头,然后是一个元音字母,它应该可以工作。([aeéiou])

编辑:$word_one 来自一个带代词的数组,$word_two 来自一个二维数组。 $word_two 在这种情况下是两个词。

示例:

 $word_one= 'je' +   $word_two='aime'  =  j'aime 
 $word_one= 'tu' +   $word_two='aimes' = tu aimes 

此函数的期望输出:

 $word_one= 'je' +   $word_two='<u>aime' = j'aime (with html code between)
 $word_one= 'je' +   $word_two='</td><td>aime' = j'aime (with html code between)

&& preg_match('~^h?(?:[aæàâeéèêëiîïoôœuûù]|y(?![aæàâeéèêëiîïoôœuûù]))~ui', strip_tags($word_two))应该可以解决问题。

(我在开头添加了可选的 h,因为 h 是法语中的无声 h。我添加了太多重音元音)y 后跟另一个元音。