当前位置: 首页 > 知识库问答 >
问题:

如何让文本匹配不带误报?

百里景山
2023-03-14

我有以下代码:

if (URL.toLowerCase().match(/\.(gif)/g)) {
    alert('gif');
}

if (URL.toLowerCase().match(/\.(gifv)/g)) {
    alert('gifV');
}

当URL是gifV(例如imgur.com/dog.gifV)时,页面加载会给我两个警告。

当url是GIFV时,我如何使它只给我GIFV警报?

谢啦!

共有1个答案

胡劲
2023-03-14

首先检查文本的超集(gifv),如果第一个未找到匹配项,则仅检查文本的子集(gif):

if (URL.toLowerCase().match(/\.(gifv)/g)) {
    alert('gifV');
} else if (URL.toLowerCase().match(/\.(gif)/g)) {
    alert('gif');
}
 类似资料:
  • 在下面的Maven依赖项示例中,slf4j依赖项希望在log4j 1.2.17中拉取,log4j显式依赖项希望在1.2.15中拉取。Maven将log4j解析为版本1.2.15但是,Maven没有输出sl4j想要log4j的更高版本的警告。 我怎样才能让Maven对这些类型的冲突发出警告,而不是默默地接受1.2.15版本?

  • 假设我的客户支持TLS V1。0,1.1和1.2。远程站点支持TLS V1。0和1.1。双方都支持相同的密码。 我的问题是: 1-据我所知,我将始终使用我现有的最高TLS版本启动通信。在这种情况下,我将如何与另一边联系? 2-以下是客户端和服务器之间的Wireshark客户端HELLO捕获,如上所述。 这种连接尝试最终导致“无法创建SSL/TLS安全通道”。我怀疑这与“TLSV1.1记录层”和“版

  • 我目前在tensorflow中使用RNN时遇到了这个错误: 这个程序需要协议缓冲区运行库的3.3.0版本,但是安装的版本是2.6.1。请更新您的库。如果您自己编译程序,请确保您的标头来自与链接时库相同的协议缓冲区版本。(版本验证失败在"bazel-out/local_linux-opt/genfile/tenorflow/contrib/tensor_forest/proto/fertile_st

  • 问题内容: 这是一个分为两个部分的问题。 我的文档如下所示: 我的第一个问题是如何检索“ title” 恰好是 “ No Title”的所有文档。我不希望出现标题为“此文档没有标题”的文档。 我的第二个问题是如何检索“ URL” 恰好 出现在一长串URL中的所有文档。 我正在使用pyelasticsearch,但是在curl中使用通用答案也可以。 问题答案: 如果您存储了源代码(这是默认设置),则

  • 当我运行flutter create x或flutter doctor时,我会得到以下消息“无法找到任何匹配版本的JVMs”。 如何在Mac OS X 10.9上设置JAVA_HOME环境变量?

  • 类似定位器参数,文本模式是另一种常用的 Selenium 命令参数。需要使用文本模式的命令,例如:verifyTextPresent, verifyTitle, verifyAlert, assertConfirmation, verifyText, verifyPrompt。上面已经提到,LinkText 定位器可使用文本模式。文本模式使用特殊字符来模糊匹配预期的文本,而不必准确的描述该文本。

  • 我想用IntelliJ IDEA 15代替Android Studio,但我在构建方面有问题。我得到以下错误: 我犯了什么错?如下图所示,所有配置均正确。 我配置了一个JDK和Android工具如下:

  • 我试图在包含特殊字符的URL中传递这个字符串,唯一能让它工作的方法是使用JavaScript encodeURIComponent('tester')ๆ๘ๅ') 它生产“测试员æå” 我在Java中尝试做的每件事都会产生不同的编码,而在另一端不起作用。。。你知道我怎么才能拿到测试仪吗ๆ๘ๅ 用Java编码到测试员æå?提前谢谢! 上述类的输出如下所示: 注意:当我写这篇文章的时候,我突然想到我可以