【发布时间】:2013-08-05 01:32:17
【问题描述】:
好的,我正在处理一个包含许多一般对象 ID 的配置文件。
必须编辑所有初始代码,以便添加更多功能,大约 1200 个 ID,我必须手动一个一个地编辑。所以我想也许 Notepad++ 可以使用 RegEx 函数为我完成整个编辑。
但是,问题是我需要从 line 2 中检索 ID,该 ID 是带引号的,然后将此 ID 放入 line 1 必须在括号之间。此步骤将重复多次,因此下一组将是第 4 行和第 3 行,而不是第 2 行和第 1 行,依此类推。
例子:
Line 1: < InbagCount(11111) />
Line 2: < ItemID="12345" />
Line 3: < InbagCount(11111) />
Line 4: < ItemID="543" />
现在,我需要将所有 11111 替换为下一行的 ItemID。
这是我一直在使用的与 ItemID=""
中的文本匹配的代码(?<=ItemID=")(?:\\.|[^"\\])*(?=")
它可以找到它们,但是当我单击“替换”按钮时会发生这种情况:
InbagCount(?<=ItemID="?:\.|[^"\]*?=")
也许 Notepad++ 不是这项工作的工具。
有人知道我可以使用什么吗?
提前谢谢,如果你能帮助我,我将不胜感激:)
【问题讨论】:
-
你是怎么想到那个正则表达式的?它试图匹配一个反斜杠
\和一个点.。你觉得这有意义吗? -
嗯,我在 stackoverflow 的某个地方找到了它,它最初用于查找引号之间的 ID。但是在尝试替换时它什么也没做。
-
查看我的答案,它可以使用带有正则表达式的 Notepad++ 工作
标签: regex replace find quotes parentheses