将成对的引号更改为左引号和右引号

Changing pairs of quotations marks to left and right quotation marks

tl;dr:想要用 [=36 替换 正则引号 ("...") =]smart quotes (“...”),OpenOffice 的 "Find/Replace" 工具中打开了正则表达式。

我认为最好的方法是找到 2 个 " 的实例,任意长度的任意字符和它们之间的白色 space,并将第一个替换为 ,或者第二个带有 。然后,我可以将 all " 替换为补充引号。

...如果它是两个独立的正则表达式,可能会更容易(对我来说——在我的脑海中),即使我知道一些巫师可以将它合二为一。


好吧,如果你愿意,你现在可以跳过其余部分,神秘的“cerfs sarcelle”已经跃出你的视野,留下一堵文字墙成为唯一的主题......


基本的东西,我知道,但我不太了解。

在查看正则表达式时,我发现它们使用了数十种语言。None 其中我可以识别。并且找不到哪个 OO 用作它的本机,所以我什至无法使用我找到的生成器来提供帮助。 :\

我正在编辑即将变成小说的内容,需要一些陈旧的排版。与句号后的双 spaces 和使用 em-dash 来表示中断的语音不同,这在查找和替换时更棘手。

如有任何帮助,我们将不胜感激。

如果有人愿意分解所述正则表达式的每一步,并且逻辑上应该先写...该死,我会把你放在奉献中(如果我在写它。可悲的是,我不是。)

...是的,一本小说,用免费的文字处理器编辑...这 由作者自行出版,我 是无偿服务,因为他们是我的朋友,你怎么知道的?和?为什么是的,我 失业了!你真是我们这个时代的伟大先知,啊,悲哀的显而易见的事物的观察者! :P

谢谢!

只要没有嵌套引号(即引号中的引号)并且没有偏离配对的杂散引号,您替换引号对的想法就可以正常工作。

现在是(扩展的)正则表达式。

您要替换的表达式是:"(.*)"。这将搜索一对引号及其间的任何内容。点匹配任何一个字符,星号表示它前面的任何字符(在本例中为点)的零次或多次重复。括号是为了捕获中间匹配的任何东西,所以我们可以在替换模式中将其称为 </code>,因此我们可以在替换中复制它,应该是 <code>“”.

我使用 https://wiki.openoffice.org/wiki/Documentation/How_Tos/Regular_Expressions_in_Writer 来确定 OpenOffice 用于正则表达式的特定语法,但它似乎大部分都很标准。