gpt4 book ai didi

javascript - 确保文本的双引号已闭合

转载 作者:行者123 更新时间:2023-12-01 00:28:58 37 4
gpt4 key购买 nike

如何确保用户输入的以双引号开头的文本也以双引号结尾?或者它在文本中有双引号,请确保它是闭合的,例如:

  1. 测试“a错误
  2. 测试“a”正确
  3. “测试”错误
  4. “测试”正确


我在按键事件上有一个委托(delegate)函数,因此如果用户以 " 开头,则在双引号关闭之前不应运行该函数,否则我传递值的 API抛出错误,因为引号未关闭,但他们也可以输入不带引号的文本。
我已经尝试过正则表达式,但是有更好的方法吗?

if (filterDescriptor.value && String(filterDescriptor.value).startsWith('"') ) {
if(!String(filterDescriptor.value).match('"([^\\"]|\\")*"')) {
filterDescriptor.value = "";
}
}

最佳答案

你可以这样做:

if (filterDescriptor.value
&& String(filterDescriptor.value).startsWith('"')
&& String(filterDescriptor.value).slice(-1) === '"'
) {
doSomething();
}

这些也是选项:

&& String(filterDescriptor.value).substr(-1) === '"'

&& String(filterDescriptor.value).charAt(String(filterDescriptor.value).length - 1) === '"'

更新

要检查字符串是否包含两个引号,您可以使用 JavaScript 函数尝试此方法:

String(filterDescriptor.value).includes('"',String(filterDescriptor.value).search('"') + 1)

或者使用正则表达式:

RegExp('.*".*".*').test(filterDescriptor.value.toString())

关于javascript - 确保文本的双引号已闭合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58736152/

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