翻译规则

时间:2011-09-25 14:57:22

标签: perl voip

我想为VoIP系统创建转换规则以获得以下结果: 如果有人拨打4545,系统必须将其转换为1234545,我设法使用以下规则执行此操作:s / ^ 4545/1234545 /

我现在的问题是,如果有人拨打454567,我的规则将此转换为123454567,我想得到1234545 THX

2 个答案:

答案 0 :(得分:2)

不清楚为什么454567会变成1234545?如果在其中任何地方运行4545的字符串是1234545吗?

如果您只想将确切的字符串4545更改为1234545,则可以使用s/^4545$/1234545/

如果你想在其中任何地方运行4545的字符串变为1234545,那么你可以使用s/.*4545.*/1234545

答案 1 :(得分:0)

$number='1234545' if ($number eq '4545'); #eq because phone number can contain non-digits.

如果您想转换任何以'4545'开头的数字,请使用以下代码:

s/^4545.*/1234545/