Если вам нужно учитывать экранированные обратные слеши, как указано в outis, вы можете использовать это:
m/"((\\\\|\\"|[^"])+)"/
(Кажется, я не могу оставить комментарий к ответу outis, но наше решение не работает с этим:
"abc\\\"123"
будет производить
abc\\\
)
Введите:
,"\"abc123","","a",["some_string"]
,"abc123\" ","","a",["some_string"]
"\"abc123\"","","a",["some_string"]
"abc\"123\"","","a",["some_string"]
"abc123","","a",["some_string"]
"ab\\c123","","a",["some_string"]
"abc123\\","","a",["some_string"]
"abc123\\\"","","a",["some_string"]
"abc\\\"123\"","","a",["some_string"]
"abc123\\\\\"","","a",["some_string"]
Выход:
\"abc123
abc123\"
\"abc123\"
abc\"123\"
abc123
ab\\c123
abc123\\
abc123\\\"
abc\\\"123\"
abc123\\\\\"