Я пробовал это, и он работал.
app.get('/', function (req, res) {
res.sendFile('public/index.html', { root: __dirname });
});
Как насчет этого?
/"([^\\"]|\\\\|\\")*"/
нуль соответствий или больше символов, которые не являются наклонными чертами или кавычками ИЛИ двумя наклонными чертами ИЛИ наклонной чертой затем кавычка
/"(?:[^\\"]|\\.)*"/
Это - почти то же как ответ Cal, но имеет преимущество соответствующих строк, содержащих управляющие коды такой как \n
.
Эти ?:
символы там для предотвращения содержавшего выражения, сохраняемого как обратная ссылка, но они могут быть удалены.
Универсальное решение (соответствие всем backslashed символам):
/ \A " # Start of string and opening quote
(?: # Start group
[^\\"] # Anything but a backslash or a quote
| # or
\\. # Backslash and anything
)* # End of group
" \z # Closing quote and end of string
/xms
См. текст:: Сбалансированный . Это лучше, чем заново изобретают колесо. Используйте gen_delimited_pat
, чтобы видеть, что шаблон результата и учиться формирует его.
Regexp :: Common - это еще один полезный инструмент для знания. Он содержит Regexps для многих общих случаев, включенные цитируемые строки:
use Regexp::Common;
my $str = '" this is a \" quoted string"';
if ($str =~ $RE{quoted}) {
# do something
}