только когда строка начинается на 1 и более ниж. подчеркиване при доп. условии что ни перед ними, ни между, ни после них не было любого символаНу так строка начинается с андерскоров или в ней нет ничего кроме андерскоров? Потому что "после них не было любого символа" - это значит, что вообще в строке ничего кроме андерскоров нет. И тогда регулярка простейшая:
^_+$
<<([^|]+)\|([^>]+)>>
\[\[([^|]+)\|([^]]+)\]\]
$pattern = new RegExp('\\[\\d{1,4}\\]', 'g');
Литеральная запись обеспечивает компиляцию регулярного выражения при вычислении выражения. Используйте литеральную запись если регулярное выражение будет неизменным. Например, если вы используете литеральную запись для конструирования регулярного выражения, используемого в цикле, регулярное выражение не будет перекомпилироваться на каждой итерации.
fgetcsv — Читает строку из файла и производит разбор данных CSV
/БУМАГА №\s*(\d+)/g
в чём причинаГлавным образом в том, что str_replace() не работает с регулярными выражениями.
Десятичная точка обозначает любой символ, кроме перевода строкиjavascript.ru/regexp
/(<%--)((?:.|\n)*)(--%>)/gmi
. $subject = "яблоко красное и [зеленое] яблоко и еще [одно] красное яблоко и [еще] одно яблоко, зеленое";
$pattern = '/\[(.+?)\]/';
preg_match_all($pattern, substr($subject,3), $matches);
print_r($matches);