Intereting Posts
pecl install cassandra throws: "error: Не удалось загрузить libcassandra" Неопределенная ошибка смещения, но смещение не определено Как использовать флажки для ввода true (1) или false (0) в mySQL И показывать, как указано в форме php / html? Multiupload с PHP / JavaScript Как Facebook Post внешне используя Graph Api – пример RGB для HSV в PHP Как преобразовать веб-приложение php в настольное приложение и сохранить базу данных График потока приложений PHP (или график вызовов функций) Временные метки Laravel для отображения миллисекунд parse_url () возвращает ошибку, когда example.com передается "Phpinfo (): Нельзя полагаться на настройки часового пояса системы …" Лезвие Laravel 5 показывает пустую страницу, когда возникает ошибка вместо исключения исключения Почему вы не можете называть абстрактные функции абстрактными классами в PHP? Отправить зашифрованный файл (zip или txt) – через PHP – можно открыть на ПК с Windows PHP if или statement не работает

Удалить числовой префикс из строки – PHP regex

Кто-нибудь захочет помочь мне с регулярным выражением, чтобы надежно распознать и удалить любое число, за которым следует точка, в начале строки? Так что

1. Introduction 

становится

 Introduction 

а также

 1290394958595. Appendix A 

становится

 Appendix A 

Пытаться:

 preg_replace('/^[0-9]+\. +/', '', $string); 

Который дает:

 php > print_r(preg_replace('/^[0-9]+\. +/', '', '1231241. dfg')); dfg 

Я знаю, что вопрос закрыт, только мои два цента:

 preg_replace("/^[0-9\\.\\s]+/", "", "1234. Appendix A"); 

Будет работать лучше всего, на мой взгляд, главным образом потому, что он также будет обрабатывать такие случаи, как

 1.2 This is a level-two heading 

Вуаля:

 ^[0-9]+\. 

Хорошо, это не подходит для распознавания и удаления любого числа, за которым следует точка , но он вернет нужную строку, например Приложение А, чтобы она могла претендовать на альтернативу.

 // remove everything before first space echo trim(strstr('1290394958595. Appendix A', ' ')); // remove all numbers and dot and space from the left side of string echo ltrim('1290394958595. Appendix A', '0123456789. '); 

Просто проигнорируйте это, это не вариант.

Материал после строки

 $string = "1290394958595. Appendix A"; $first_space_position = strpos(" ", $string); $stuff_after_space = substr($string, $first_space_position); 

Материал после точки

 $string = "1290394958595. Appendix A"; $first_dot_position = strpos(".", $string); $stuff_after_dot = substr($string, $first_dot_position); 
 print preg_replace('%^(\d+\. )%', '', '1290394958595. Appendix A'); 

Функция PHP для поиска строки для регулярного выражения и для замены чего-то другого – preg_replace . В этом случае вы хотите что-то вроде:

 $mytitle = preg_replace('/^[0-9]+\. */', '', $myline); 

Ну вот:

 /[0-9]+\./ 

Кстати, я определенно использовал бы регулярное выражение здесь, поскольку они очень надежные и легкие.

ура

 $str="1290394958595. Appendix A"; $s = explode(" ",$str,2); if( $s[0] + 0 == $s[0]){ print $s[1]; }