我有一个包含换行符的字符串。在"""的行之间,我想在\n之前添加分号。

输入字符串示例:

print and not affected
"""
This is my game
dead or alive
ALIVE!
"""


输出字符串示例:

print and not affected
"""
This is my game;
dead or alive;
ALIVE!;
"""


目前,我有一个正则表达式,看起来像:

"""([^\n]*\n)*"""


为什么不起作用?

顺便说一下,PHP,Java,JavaScript或Python代码示例对我有用。

最佳答案

的PHP

尝试使用以下正则表达式,并将匹配的换行符替换为;\n

(?s)(?:(?<=^)(?:(?!""").)*|(?:(?!""").)*(?=$)|"""\n)(*SKIP)(*F)|\n


DEMO

10-08 02:12