|
|
|
| Есть строка из массива: "Для использования итого значения нужно". Как мне проверить, стоит ли в конце этой строки точка? Т.е. нужно проверить последние 3-5 символов.
Пытался preg_match(), но она не подходит.
А все остальные строковые функции (которыми пытался) возвращают к-во символов, а не сами символы. | |
|
|
|
|
|
|
|
для: lElectroHardl
(07.08.2010 в 18:41)
| | Хотя я не силён в регулярных выражениях, но попытался сделать.
вот что получилось
<?php
$str = "Для использования итого значения нужно .";
$pattern = "|^[а-яА-Я\s]+(\.)?$|i";
preg_match($pattern,$str,$out);
if(!empty($out[1])){echo "<br>точка есть";}
else{echo "<br>точки нет";}
?>
|
в данном случае после точки не должно быть ни каких символов, перед точкой можно будет убрать пробел, всё равно определить есть она или нет. | |
|
|
|
|
|
|
|
для: lElectroHardl
(07.08.2010 в 18:41)
| | А зачем 3-5 символов? У вашей строки 3-5 концов?
А вообще отрезать последний сомвол можно так:
<?
$str = 'Строка.';
if ( substr($str, -1, 1) == '.' ) {
print 'Точка в конце найдена';
}
|
| |
|
|
|
|
|
|
|
для: lElectroHardl
(07.08.2010 в 18:41)
| | Очень странно, чем тебя не устраивает функция preg_match? Ты хочешь узнать, стоит ли вконце символ точка?
preg_match("/\.$/",$string); //ВЕрнет 1 если есть точка, 0 если нет точки...
И зачем тебе при проверки соответствия есть ли точка, вернуть эту точку?? Я так думаю, тут нужно либо true, либо false..
Используй функцию $pos = strripos($string,".");
Функция вернет позицию первой найденной точки с конца строки...
А чтобы проверить, что эта точке в конце строки, и в каком-то еще непонятном диапазоне 3-5 символов... (точка же последний символ!?)
<?php
if(strlen($string)-$pos<4) { echo "где-то есть точка в конце"; }
|
| |
|
|
|
|
|
|
|
для: lElectroHardl
(07.08.2010 в 18:41)
| |
<?php
$text = 'Какой-то текст.';
if ($text[strlen($text) - 1] == '.')
echo 'Точка есть. Ну и что?';
|
А проще сделать так:
<?php
$text = rtrim($text, '.') . '.';
|
Тогда в конце стопудово будет точка. | |
|
|
|
|
|
|
|
для: neadekvat
(07.08.2010 в 20:13)
| | Саня, спасибо. Другим тоже.
Для чего проверять нужно? Т.к. дальше в скрипте проверяются все строки, где в конце стоит ".". Вот мне и нужно проверить, стоит ли в конце точка. Если нет, добавить к переменной точку. | |
|
|
|