gpt4 book ai didi

javascript - 将“直引号”转换为 “Curly Quotes”

转载 作者:行者123 更新时间:2023-12-02 22:46:48 24 4
gpt4 key购买 nike

我有一个使用基于 Javascript 的规则引擎的应用程序。我需要一种将常规直引号转换为弯引号(或智能)引号的方法。只需对 ["] 执行 string.replace 就很容易了,只不过这只会插入一种花引号。

我能想到的最好方法是将第一次出现的引号替换为左弯引号,然后将后面的所有其他引号替换为左弯引号,其余的则替换为右弯引号。

有没有办法使用 Javascript 来完成这个任务?

最佳答案

您可以用左引号替换单词字符前面的所有内容,用右引号替换单词字符后面的所有内容。

str = str.replace(/"(?=\w|$)/g, "“");
str = str.replace(/(?<=\w|^)"/g, "&#8221;"); // IF the language supports look-
// behind. Otherwise, see below.

正如下面的评论所指出的,这没有考虑标点符号,但很容易:

/(?<=[\w,.?!\)]|^)"/g

[编辑:]对于不支持look-behind的语言,比如Javascript,只要先替换所有前面的,你有两个选择:

str = str.replace(/"/g, "&#8221;"); // Replace the rest with right curly quotes
// or...
str = str.replace(/\b"/g, "&#8221;"); // Replace any quotes after a word
// boundary with right curly quotes

(我保留了上面的原始解决方案,以防这对使用支持后视的语言的人有帮助)

关于javascript - 将“直引号”转换为 “Curly Quotes”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2202811/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com