js 如何用正则表达式提取数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js 如何用正则表达式提取数据相关的知识,希望对你有一定的参考价值。

有一段字符串:var str = "abc.gif, admin.txt, root.gif, xxx";
我现在想用正则表达式 将里面的 图片文件名提取出来,请注意是用正则表达式

参考技术A var reg = /\\.([^,]+)/g;
var str = "abc.gif, admin.txt, root.gif, xxx";
while(reg.test(str))
alert(RegExp.$1);// 依次弹出gif txt gif

参考技术B 试下这个:/\b\w+\b(?=\.(gif|jpg|jpeg|png|bmp))/
如果有更多的图片后缀可以继续加进去追问

谢谢,能否解释一下这个正则表达式的意思,主要是 b(?=\.(gif|jpg|jpeg|png|bmp))/ 不知道这后面加一个括号为什么就能匹配了?

追答

后面的括号是正则里的正前向断言,只做匹配但不会出现在结果里,里面的图片后缀应该不用解释了,一看就懂

本回答被提问者采纳

请问如何用正则表达式验证一个表示路径的字符串的合法性

请问,用正则表达式验证一个表示路径的字符串的合法性,怎么写?就是验证字符串中不能包含『/』『:』『*』『?』『”』『<』『>』『|』,并且『:』只能在第二个字符处出现一次(表示盘符)

一分钟学Python序列课程,看操作,动手做,学得快,记得牢

参考技术A ^[a-zA-Z]:\\[^/:*?"<>|]+$本回答被提问者采纳 参考技术B 偶在Python下测试通过
表达式:
i = r'([a-zA-Z]:)?\\?([^/:*?"<>|\\]*\\)*([^/:*?"<>|\\]*)\\?'

re.match(i, r'c:\windows\system32')
re.match(i, r'\windows\system32')
re.match(i, r'windows\system32')

如果你使用的不是Python,可能没有r''用法,请根据具体的语法看是否有必要将\更换为\\

以上是关于js 如何用正则表达式提取数据的主要内容,如果未能解决你的问题,请参考以下文章

如何用正则表达式获取cookie

如何用正则表达式判断一个字符串中有数字

如何用excel中的VBA的正则表达式提取出字符串?

js 正则表达式提取某一段字符

如何用正则表达式检测ip是不是正确,求详解

答果子问R语言如何用正则表达式提取特定的字符串