输入:
+ 1220 001d.a16a.9400 dynamic 0 F F Po10
* 1220 0021.f60f.4127 dynamic 0 F F Eth1/46
表达式:
\S+\s+(\d+)\s+([0-9A-Fa-f]{4}[.][0-9A-Fa-f]{4}[.][0-9A-Fa-f]{4})\s+\w+\s+\d+\s+\w+\s+\w+\s+(.*)
替换
$1\t$2\t$3
输出:
1220 001d.a16a.9400 Po10
1220 0021.f60f.4127 Eth1/46
答案 0 :(得分:0)
如果你的意思是缩短“优化”,试试这个:
表达式:
^.+?(\d+)\s+([^\s]+?)\s.+?([^\s]+)$
替换:
$1\t$2\t$3
也许你必须使用/ m(Multiline)和/ s(dot匹配任何char)开关。
PHP-示例:
<?php
$sourcestring="+ 1220 001d.a16a.9400 dynamic 0 F F Po10";
echo preg_replace('/^.+?(\d+)\s+([^\s]+?)\s.+?([^\s]+)$/ms','$1\t$2\t$3',$sourcestring);
?>