Notepad++ 正则表达式替换连字符
Notepad++ Regex replace Hyphens
我有一个 HTML 并且 alt 标签的格式如下:
alt="something-nice-and-beautiful"
如何仅用 alt 标记之间的空格替换所有连字符 -
?
我还在为这个问题绞尽脑汁。我的第一个倾向是说用这个作为搜索
(alt="[^"]*?)\-(.*?")
然后替换为
。每次您 运行 它时,它都会用一个 space 替换一个连字符,只需继续执行全部替换,直到没有匹配项为止。如果我多考虑一下,我可能会想出一个更优雅的解决方案,但这是可行的。
在源表达式中(确保启用 .*
正则表达式按钮)。由于这不适用于单个表达式,因此我会这样做(当然假设您的标签最多具有可管理的长度!)
搜索:
(?<=alt=")(\w+)-(?=")
替换为:
然后再次 search/replace,添加一个 (\w+)-
:
(?<=alt=")(\w+)-(\w+)-(?=")
再一次:
(?<=alt=")(\w+)-(\w+)-(\w+)(?=")
...
(?<=alt=")(\w+)-(\w+)-(\w+)-(\w+)(?=")
边做边添加额外的词,以确保替换所有标签。
我有一个 HTML 并且 alt 标签的格式如下:
alt="something-nice-and-beautiful"
如何仅用 alt 标记之间的空格替换所有连字符 -
?
我还在为这个问题绞尽脑汁。我的第一个倾向是说用这个作为搜索
(alt="[^"]*?)\-(.*?")
然后替换为
。每次您 运行 它时,它都会用一个 space 替换一个连字符,只需继续执行全部替换,直到没有匹配项为止。如果我多考虑一下,我可能会想出一个更优雅的解决方案,但这是可行的。
在源表达式中(确保启用 .*
正则表达式按钮)。由于这不适用于单个表达式,因此我会这样做(当然假设您的标签最多具有可管理的长度!)
搜索:
(?<=alt=")(\w+)-(?=")
替换为:
然后再次 search/replace,添加一个 (\w+)-
:
(?<=alt=")(\w+)-(\w+)-(?=")
再一次:
(?<=alt=")(\w+)-(\w+)-(\w+)(?=")
...
(?<=alt=")(\w+)-(\w+)-(\w+)-(\w+)(?=")
边做边添加额外的词,以确保替换所有标签。