Substitute "s|<a(.*)href=\"/(.*)\.html\"(.*)>|<a$1href=\"/$2\"$3>|i"
这是我使用的替代规则,但看起来如果在段落中我有多个href,只有尾随的一个被剥离出html扩展名。以前的hrefs没有任何影响。
答案 0 :(得分:2)
(.*)
表示此行中的字符数尽可能多,因此在匹配第一个<a
后,它会搜索最后一个href
。如果添加一个?在*之后,它将查找匹配(.*?)
的最小字符串,但仍允许其余字符串匹配。
Substitute "s|<a(.*?)href=\"/(.*?)\.html\"(.*?)>|<a$1 href=\"/$2\"$3>|i"