gpt4 book ai didi

javascript - 如何在 javascript 中使用正则表达式来匹配此特定字符串,如果匹配则将其设为空

转载 作者:行者123 更新时间:2023-12-02 23:07:08 26 4
gpt4 key购买 nike

我有一个这样的字符串

///缓存ml/3/11204_gb.png///缓存ml/3/16917_ar.png///缓存ml/3/52871_au.jpg

我想将其与正则表达式匹配,如果匹配则将字符串设为空
所以我想检查字符串是否以“/”开头并以“.png|.jpg”结尾,然后删除/清空整个字符串

最佳答案

这是您想要的正则表达式:

/(\/\/\/ cache ml\/\d\/\d{5}_..\.(png|jpg))+/i
  • / 是一个特殊字符,所以我们必须像这样 \/
  • 对其进行转义
  • cache ml\/3\/\ 这部分将匹配 “cache ml\3\” 完全假设它是稳定的
  • \d{5} 将匹配任意 5 位数字
  • .. 匹配任意 2 个字符
  • . 是一个特殊字符,所以我们必须像这样 \.
  • 对其进行转义
  • (png|jpg) 将匹配 png 或 jpg
  • 我们将整个内容分组为一个组 () 并使用 + 这表示一个或多个,因此正则表达式将匹配 1 以上的任意数量的重复,而不仅仅是 3作为你的例子
  • 我们在末尾使用 i 使正则表达式不区分大小写。

现在我们有了正则表达式,我们像这样使用它

var myString = "/// cache ml/\d/11204_gb.png/// cache ml/3/16917_ar.png/// cache ml/3/52871_au.jpg"
var myRegex = /(\/\/\/ cache ml\/3\/\d{5}_..\.(png|jpg))+/i
var newString = myString.replace(myRegex, "")

<小时/>

为了使匹配在文件名方面损失更大,您可以将 d{5}_.. 替换为 .*,这样正则表达式就变成:

/(\/\/\/ cache ml\/\d\/.*\.(png|jpg))+/i

这将匹配带有 png 或 jpg 扩展名的任何文件名

关于javascript - 如何在 javascript 中使用正则表达式来匹配此特定字符串,如果匹配则将其设为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57534137/

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