javascript - 使用Javascript的match函数提取字符串的一部分

标签 javascript regex

我对正则表达式很着迷,我已经了解了一些关于它们的东西,但我无法理解它们。我需要从一些 HTML 代码中提取字符串的一部分,但我不知道如何使用正则表达式来执行此操作。

我知道 str.match() 函数接受正则表达式或字符串并返回它。我想使用这个函数来提取部分字符串。

这是我的代码:

<img src="images/1.jpg" class="imgs" />
<img src="images/2.jpg" class="imgs" />
<img src="images/3.jpg" class="imgs" />

<script>
    var str = document.getElementsByClassName('imgs');  // str that is being matched
    var re = /^"images/.*"$/;
    var res = str[0].match(re);    // returns undefined is not a function
</script>

“images/1.jpg”来自与数字连续的数组。 IE 。 'images/1.jpg'、'images/2.jpg'。

我想提取“images/(num).jpg”,无论它是哪个数字,我都需要提取带有数字的“images”。最终结果应该是“images/(num).jpg”。

是否可以使用 str.match 和正则表达式来完成此操作,或者应该使用其他一些技术?

最佳答案

如果图像始终是 jpg,您可以这样做:

<img src="images/1.jpg" class="imgs" />
<img src="images/2.jpg" class="imgs" />
<img src="images/3.jpg" class="imgs" />

<script>
    var str = document.getElementsByClassName('imgs');  // str that is being matched
    var re = /images\/[0-9]+\.jpg/g
    var res = str[0].src.match(re)[0];    
</script>

这将返回您要查找的字符串。

关于javascript - 使用Javascript的match函数提取字符串的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23889912/

相关文章:

windows - 删除匹配正则表达式的文件

regex - R正则表达式问题

javascript - 如何将 JSON 数据动态添加到 PhoneGap 应用程序中的 JQuery Mobile ListView ?

javascript - 如何验证文本框中的特殊字符并在错误消息中显示输入的特殊字符?

python - 如何使用两组正则表达式 url?

javascript - str.split (' ' ).map() 与 arr.map(),用于固定输入

javascript - 将 php 正则表达式转换为 javascript

javascript - 谷歌地图信息窗口 : how can I get its offset/clearance?

javascript - 无法读取未定义的属性 'styledComponentId'

javascript - 增加 td 的宽度,使内容在一行中