我对正则表达式很着迷,我已经了解了一些关于它们的东西,但我无法理解它们。我需要从一些 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/