Html 用于用图像源名称替换alt标记的正则表达式

Html 用于用图像源名称替换alt标记的正则表达式,html,regex,Html,Regex,我一直在使用regex试图更改1000个文件,并将image-alt标记添加为图像名称 要搜索/替换的文本示例 <img src="path/someimagename.jpg" height="100" width="100" /> 我还没有找到将两者结合起来实现目标的方法 希望使用文本编辑器替换所有文件 任何建议或帮助都很好。您需要在正则表达式中创建一些捕获组。我稍微修改了您的表达式(它现在还支持嵌套路径): 你可以在行动中看到它 要同时阻止包含alt=”“的所有条目,可以使

我一直在使用regex试图更改1000个文件,并将image-alt标记添加为图像名称

要搜索/替换的文本示例

<img src="path/someimagename.jpg" height="100" width="100" />
我还没有找到将两者结合起来实现目标的方法

希望使用文本编辑器替换所有文件


任何建议或帮助都很好。

您需要在正则表达式中创建一些捕获组。我稍微修改了您的表达式(它现在还支持嵌套路径):

你可以在行动中看到它


要同时阻止包含
alt=”“
的所有条目,可以使用以下正则表达式:

$1$2$3 alt="$2"$4
(]*)(\.[^.\/]*?['''])((?!.*alt=['].*)[^>)

你可以看到它的作用。

你需要什么将alt=”“替换为什么?应该用什么来代替alt?你可以在所有页面中添加一个小脚本来完成此操作。
$(“img”).each(function(){$(this.attr(“alt”),$(this.attr(“src”)})
。HTML中没有正则表达式功能,所以我假设您很乐意使用JavaScript来回答问题?或者这是通过服务器端、php还是其他服务器端语言来完成的?
(<img(?!.*?alt=(['"]).*?\2)[^>]*)(>)
<img\b[^<>]*?src=['"].*?\/([^.\/<>]*)\.[^.\/<>]*['"][^><]*?\>
(<img\b[^<>]*?src=['"].*?\/?.*?)([^.\/<>]*)(\.[^.\/<>]*?['"])([^><]*?\>)
$1$2$3 alt="$2"$4
(<img\b(?!.*alt=["'].*)[^<>]*?src=['"].*?\/?.*?)([^.\/<>]*)(\.[^.\/<>]*?['"])((?!.*alt=["'].*)[^><]*?\>)