^
в начале списка персонажей \d
) [^\d,.]
означает, что требуется ровно один из этих символов. И поскольку он может соответствовать только одной из запятой или точке с цифрой, вы не можете делать десятичные дроби. Если вы хотите определить количество раз, вам нужно добавить .
для одного или более, *
для нуля или более или сделать диапазон {min,max}
после [^\d,.]
. ()
. Попробуйте тестеры регулярных выражений, например https://regex101.com/r/PtwC0b/4 Хотя в Apache я не думаю, что вам нужно бежать /
с помощью \
, так что игнорируйте \/
.
Конечным результатом является что-то , подобное /lists/([a-zA-z]+)/(?:([\d.]+)/([\d.]+)/){0,1}
Группа (?: ... ){0,1}
не захватывает, но гарантирует, что все в ней является одной группой - то есть, предоставляют только долготу и широту ( и ровно ноль или один их набор). Для полного объяснения см. https://regex101.com/r/PtwC0b/4
Это не был протестирован на Apache.
В оболочка C - амперсанд после большего - чем символ
make >& filename
Предупреждения компилятора появляются на stderr
, а не на stdout
, поэтому вы не видите их, когда вы просто перенаправляете make
в другое место. Вместо этого попробуйте следующее, если вы используете Bash:
$ make &> results.txt
&
означает «перенаправить stdout и stderr в это место». Другие оболочки часто имеют похожие конструкции.
В оболочке bourne shell:
make > my.log 2>&1
Т.е. > перенаправляет stdout, 2>&1 перенаправляет stderr туда же, куда и stdout
Вывод пошел в stderr. Используйте 2>
, чтобы перехватить это.
$make 2> file
От http://www.oreillynet.com/linux/cmd/cmd.csp?path=g/gcc
Символ > не перенаправляет стандартную ошибку. Он полезен, когда вы хотите сохранить законный вывод без засоряя файл сообщениями об ошибках. Но что, если сообщения об ошибках - это то, что вы хотите сохранить? Это довольно часто встречается при поиске и устранении неисправностей. Решение решение - использовать знак "больше, чем за которым следует амперсанд. (Эта конструкция работает почти во всех современных оболочке UNIX.) Она перенаправляет как стандартный вывод и стандартную ошибку. Например:
$ gcc invinitjig.c >& error-msg
Посмотрите там, если это поможет: another forum
Попробуйте сделать 2> файл
. Предупреждения компилятора выводятся в стандартном потоке ошибок, а не в стандартном потоке вывода. Если мое предложение не сработает, обратитесь к руководству по оболочке, чтобы узнать, как устранить стандартную ошибку.
Пока много хороших ответов. Вот один фрилл:
$ make 2>&1 | tee filetokeepitin.txt
позволит вам наблюдать, как вывод прокручивается мимо.