2016-06-07 3 views
0

Как заменить символ и символ цикла на PHP?PHP replace and looping character

Например, у меня есть ввода данных формы текстовое поле, как это:

#CI 
23,45,56x8 788,98,554x7 100x100 

or 

@CI 
23.45.56x8 788.98.554x7 100x100 

Мой учитель сказал, что выбрать одну из выше формата данных и заменить, что для вывода на что-то вроде этого:

CI,23,8 
CI,45,8 
CI,56,8 
CI,788,7 
CI,98,7 
CI,554,7 
CI,100,100 

Мои код

<?php 

    $input = 
    "@CI 
    23,45,56x8 788,98,554x7 100x100"; 

    $reg = "/((?:\d+,)*(?:\d+))x(\d+)/"; 
    $new = preg_match($reg, $input); 
    echo $new; 


?> 
+1

Как же это 23,8 и 45,8 и 98,7. Откуда берется второе число? –

+0

23,8 -> (8 из x8) 98,7 -> (7 из x7) – TomiTeruz

+0

Это исходит от x8 56x8? Или это должно быть 23x8? –

ответ

0

такое регулярное выражение, которое вы видите на демонстрационной ссылке, дает вам хорошую структуру данных

((?:\d+,)*(?:\d+))x(\d+) 

результат

MATCH 1 
1. [0-8] `23,45,56` 
2. [9-10] `8` 
MATCH 2 
1. [11-21] `788,98,554` 
2. [22-23] `7` 
MATCH 3 
1. [24-27] `100` 
2. [28-31] `100` 

demolimk

+0

Спасибо, сэр, как использовать php? и как насчет #CI для циклов? – TomiTeruz

+0

@TomiTeruz Давайте начнем писать, и мы исправим ваши ошибки. Потому что для меня это не интересно, для вас полезно – splash58

+0

ok sir, я попробую: D – TomiTeruz