Регулярные выражения

vasilukwolf
На сайте с 19.05.2013
Offline
22
624

Собственно интересует откуда это взялось и как этим пользватся, в частности интересует предмет того, как их сочетать.Прошу небольшой мастер класс по работе с ними, так как в школе инфоматичка чиатала нам книгу и на курсы её никто не отправлял. :bl::bl::bl:

Нужно, как можно быстрее.Сразу говорю, простые вещи я понял [A-Z0-9]

Git https://github.com/vasilukwolf (https://github.com/vasilukwolf) ||E-mail vasilukwolf@gmail.com WWW http://wob.su/ (http://wob.su/) || Tel. +7 916 0156328
D
На сайте с 14.01.2007
Offline
153
#2
vasilukwolf:
простые вещи я понял [A-Z0-9]

а что не понятно?

IL
На сайте с 20.04.2007
Offline
435
#3
Dinozavr:
а что не понятно?

Всё остальное... :D

vasilukwolf, для лучшего понимания можно задачки порешать (реальные, или погуглить)

http://callumacrae.github.io/regex-tuesday/challenge1.html

http://regexcrossword.com/

итд

... :) Облачные серверы от RegRu - промокод 3F85-3D10-806D-7224 ( http://levik.info/regru )
D
На сайте с 14.01.2007
Offline
153
#4
ivan-lev:
http://regexcrossword.com/

АААА!!!

мне ж работать надо:)))

vasilukwolf
На сайте с 19.05.2013
Offline
22
#5
Dinozavr:
а что не понятно?

Нарпимер, как сделать так чтобы выполняло инверсию в скобочках строки любой длины. Как онраничить телефоны, мыло, товары.

 header("Content-Type: text/html; charset=utf-8");

$str="fire(nam)(olleh)world";
echo ("Длинна символов ".mb_strlen($str)."<br>");
if (mb_strlen($str<'200')){
echo 'Длинна строки превышена';
}
else {
echo preg_replace_callback('/^([a-z0-9]+)\(([a-z0-9]+)\)\(([a-z0-9]+)\)([a-z0-9]+)$/', function($m){
return $m[1].strrev($m[2]).strrev($m[3]).$m[4];
},$str );}

Собстенно суть верхней регулярки в том чтобы скобочки найти, просто воникает вопроск, как эти парные обнаружить.Ведь выражение нужно поставить туда где есть скобка. А регрка филткна грамота.Как это сделать на примерах.

siv1987
На сайте с 02.04.2009
Offline
427
#6
vasilukwolf:
Нарпимер, как сделать так чтобы выполняло инверсию в скобочках строки любой длины.

Нахрена вам инверсия в скобочках?

vasilukwolf:
Как онраничить телефоны, мыло, товары.

В смысле ограничить? strlen

vasilukwolf:
А регрка филткна грамота.

Чо?

IL
На сайте с 20.04.2007
Offline
435
#7
siv1987:
Нахрена вам инверсия в скобочках?

Полагаю, ноги растут из... топика /ru/forum/838896

vasilukwolf:
Ведь выражение нужно поставить туда где есть скобка.

Участки, соответствующие найденным подмаскам, попадают в $matches

p.s. vasilukwolf, а для решения задачи из codecup-а достаточно знания циклов и умения работать с массивами

p.p.s. Длинна

siv1987:
А регрка филткна грамота.

Чо?

пальцы большие, кнопки на телефоне маленькие.. исправлять некогда, да и нафиг - и так поймут.

J
На сайте с 20.02.2014
Offline
120
jkm
#8

Вероятно ТС хотел изобразить что-то вроде этого:


header("Content-Type: text/html; charset=utf-8");
$str="fire(nam)(olleh)world";
echo ("Длинна символов ".mb_strlen($str)."<br>");
if (mb_strlen($str<'200')){
echo 'Длинна строки превышена';
}
else {
echo preg_replace_callback('#\(?([a-z]+)(\)?)#',
function ($m) {

if (empty($m[2])) {
return $m[1];
} else {
return strrev($m[1]);
}
}
, $str);
}

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий