我有大约520行,看起来有点像这样:
** [[失忆]。父母:[[Slowpoke]] [[Slowbro]],[[Snorlax]]
** [[魅力]。家长:[[Cottonee]]
** [[诅咒]。父母:[[Slowpoke]],[[Slowbro]],[[Slowking]],[[Turtwig]],[[Grotle]],[[Torterra]],[[Ferroseed]],[[Ferrothorn]] < / p>
** [[忍]。父母:[[Shieldon]],[[Bastiodon]]
我希望以某种方式使用F&amp; R来改变之后[[word]] 的每个实例“父母:”(例如不是Amnesia,Charm等)到{{mpic | word} },并删除所有逗号,以便一行看起来像这样:
** [[失忆]。父母:{{mpic | Slowpoke}} {{mpic | Slowbro}} {{mpic | Snorlax}}
我已经搜索过并搜索过,但实际上不知道这是否只有一两次动作是可能的(我不介意我是否需要做一些事情--10次优于520次)。我只有Notepad ++版本5.9(并且无法更新)但我也有Word,所以如果可以,请帮助!
答案 0 :(得分:1)
Aww蛋移动!试试这个正则表达式:
(?:.*Parents?:|\G)[\s,]*\K\[\[([^\]]+)\]\],?
替换为:
{{mpic|$1}}
应该这样做:)
(?:
.*Parents?: # begins with ".*Parents?:"
| # or
\G # at the end of previous match
)
[\s,]* # match spaces and commas
\K # restart the match
\[\[ # match twin open square brackets
([^\]]+) # capture what's inside the square brackets
\]\] # match twin close square brackets
,? # match any comma that comes after it
我认为\G
是在v6x版本中实现的。试试这个解决方法:
\[\[([^\]]+)\]\](?![^:\n]*:),?
并替换为与以前相同的东西。虽然我觉得这样做很简单,但这个更简单一些。它匹配[[ ... ]]
,只要它在同一行的前面某处没有:
。
答案 1 :(得分:0)
在Notepad ++中执行以下步骤:
第1步:全部找到'[['&amp;将所有替换为'{{mpic |'
第2步:全部找到']]'&amp;全部替换为'}}'
第3步:全部找到','&amp;全部替换为''
第4步:全部找到'{{mpic |' &安培;全部替换为'[['
(注意 - 对于第4步,请在查找和替换时将**放在两个字符串前面。在回答这个问题时,如果我将**放在前面,它会变为粗体。)
第5步:全部查找'}}。' &安培;全部替换为']]'
你的问题将得到解决。