Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
该线程非常相似,但我不想删除空格,而是删除任何字符。例如,我试图从字符串中删除新行(0x10 或 0x13 字符),但如果有东西在 ' ' 或 " " 周围,那么它必须保持不变。我正在使用 php。
您可以通过替换以下表达式来做到这一点:
("[^"]*"|'[^']*')|[\r\n]+
使用第一个捕获组的内容:$1.
$1
这可以通过捕获引号并将其替换为自身,或匹配您要删除的内容并将其替换为空字符串来实现。
如果您也想处理反斜杠转义,则可以在同一个替换中使用以下表达式:
("(?:[^"\\]+|\\.)*"|'(?:[^'\\]+|\\.)*')|[\r\n]+