-1

私はストリングラインを持っています2h 2m 202.29.216.236 3128 flag Thailand

$string = preg_replace("/([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})|(\s+\d{2,4}\s+)/", "$1:$2", $string);

202.29.216.236:3128 のような IP アドレスを取得する必要があります。

しかし、私のコードはこれを行います: 109.197.92.60:: 8080.

スペースバーと 2 つのコロンがどこにあるのかわかりません。

事前に感謝し、私の下手な英語で申し訳ありません.

4

2 に答える 2

4

を活用してみませんexplode()か?

<?php
$str="2h 2m 202.29.216.236 3128 flag Thailand";
$str=explode(' ',$str);
echo $str[2].":".$str[3];//202.29.216.236:3128
于 2013-11-13T10:33:02.057 に答える
0

試す

$string = preg_replace("/([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})\s+(\d{2,4})/", "$1:$2", $string);

スペースは、\s+が 2 番目のパラメーター内にあることに由来し、2 番目のコロンは | に由来します。文字。

于 2013-11-13T10:38:39.200 に答える