从 VueJS 中用户提交的字符串中删除首尾引号
P粉076987386
P粉076987386 2024-03-26 22:25:27
0
1
405

我有一个 VueJS 应用程序,其中包含预填充数据的表单。 textarea 元素包含一些数据,如 UI 上所示

注意:(抱歉,我还没有足够的代表点来附加屏幕截图):

带引号的 UI 文本区域元素的屏幕截图

我无法修改后端提供数据的方式。

因此,有没有一种好方法可以从字符串中删除第一个和最后一个引号?我不想触摸内部文本,以防用户在其中添加引号。

'Hello World,welcome to "fooWorld!"' 的预期输出应为 Hello World,welcome to 'fooWorld!'

以下是我如何在 SPA 中使用数据的真实示例:

data() {
    return {
        entryNotes: this.post.entryNotes  //<--- this is the data I need to format
    }
}

P粉076987386
P粉076987386

全部回复(1)
P粉930534280

如何使用快速正则表达式来删除开始和结束引号?

data(){
    return {
        entryNotes: this.post.entryNotes.replace(/^"/,"").replace(/"$/,"")
    }
}

第一个正则表达式查找字符串的开头(用 ^ 表示),然后查找引号。第二个正则表达式查找引号,然后查找字符串结尾(字符串结尾用 $ 表示)。

您也可以这样做:

str.match(/^"?(.+?)"?$/)[1]

这个查找字符串 (^) 的开头,后跟一个 ",但是 ? 使其成为可选。然后括号捕获 .+,这意味着匹配任何内容。括号末尾之前的 ? 意味着停止匹配,因为尽快。然后它说寻找引号,但下一个问号说“可能”,然后寻找字符串的结尾($)。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板