-1

所以,我想从这个预赛中改变@符号:

[A-Z0-9._%+-]+@[A-Z0-9.-]{3,65}\.[A-Z]{2,4}

到(at)字符串,如何使它工作;/无法弄清楚。

4

2 回答 2

2

我相信你正在寻找

ideone 演示

$your_string = str_replace('@', '(at)', $your_string);

或者

if(preg_match("/[A-Z0-9._%+-]+(@|\(at\))[A-Z0-9.-]{3,65}\.[A-Z]{2,4}/i", $your_string)){}
于 2013-04-15T22:50:15.740 回答
0

您需要创建组并在替换时参考这些(反向引用)。

search:  ([A-Z0-9._%+-]+)@([A-Z0-9.-]{3,65}.[A-Z]{2,4})
         `-- group #1 --´ `-------- group #2 ---------´

replace: \1(at)\2
于 2013-04-15T22:50:12.897 回答