| |
|
|
| | Здравствуйте. Помогите пожалуйста, нужно найти в строке по таким условиям:
подряд идут еденицы 4 раза при условиях;
Слева и справа от них граница строки, либо 0 либо 2 либо 5. | |
| |
|
|
| |
|
|
| |
для: pazha
(31.07.2012 в 18:35)
| | | Примеры строк? | |
| |
|
|
| |
|
|
| |
для: Deed
(31.07.2012 в 18:50)
| | | 033330
033332
033335
233330
233335
33335
3333n - помняет, если n = 0, 2, или 5.
...
вот в таких строках поменять тройки на четверки. | |
| |
|
|
| |
|
|
| |
для: pazha
(31.07.2012 в 18:54)
| | |
<?
$str="033335";
$new_str=preg_replace("/(?<=0|2|5)\d{4}(?=0|2|5)/","4444",$str)
?>
|
| |
| |
|
|
| |
|
|
| |
для: Deed
(31.07.2012 в 19:50)
| | | Спасибо, это именно то что я хотел ) Вы настоящий регулярщик! | |
| |
|
|
| |
|
|
| |
для: Deed
(31.07.2012 в 19:50)
| | | Такое решение также поменяет строку "01234543210" на "04444544440".
Это именно то что нужно? | |
| |
|
|
| |
|
|
| |
для: Sfinks
(01.08.2012 в 10:10)
| | | Нет, но я уже заменил \d на нужное число :-) | |
| |
|
|
| |
|
|
| |
для: Sfinks
(01.08.2012 в 10:10)
| | | В его проблеме нет строк вида "01234543210".
Но проблема интересная, и вот ее решение: (?<=0|2|5)(\d)\1{3}(?=0|2|5)
То есть, ищем четыре одинаковые цифры подряд. | |
| |
|
|
| |
|
|
| |
для: Deed
(01.08.2012 в 12:35)
| | | Спасибо, это именно то что я хотел! | |
| |
|
|