匹配多行的任何内容,然后是一串文本

时间:2013-10-04 14:44:02

标签: javascript regex

如果我有一些文字,我正在寻找一个特定的属性,我怎么能修剪它前面的行上的文字:

例如:

aoidj
aodifjiao 
<img src="asdf.asdf" id="a1" />

(\n*|(.*\n*))(.*?)src="(.+?)".*好像它应该匹配任何新行或任何带有新行的文字,然后找到我的src属性,而是替换为\4让我我的src属性,但仍将内容保留在上面的行中。

1 个答案:

答案 0 :(得分:0)

尝试以下表达式:

(?:[^s]|src="([^"]*)".*)*

并替换为$1

此表达式匹配使用s的非[^s]的字符,或匹配src及其后的内容,方法是将明星*应用于整个小组首先匹配任何不是s的内容,直到找到以s开头并且我们关心哪个是src的唯一内容。

现在它将src的值捕获到组1中,然后使用.*匹配其后的所有内容。

现在所有内容都匹配,src属性的值会在$1中捕获。

Regex101 Demo