首页 > 解决方案 > 删除复制两行Imacros时写入的[EXTRACT]

问题描述

adress1
adress2

如上所述复制和粘贴两行文本时。

adress1[EXTRACT]adress2

但我想将其粘贴如下。请教我。

adress1
adress2

我正在使用:Chrome 70.0.3538.102 Win10_x64 imacros10.0.5forCR(免费)

标签: google-chromeextractimacros

解决方案


是的,当进行多个提取时,iMacros 将使用此“[EXTRACT]”分隔符将它们分开,当使用“SAVEAS”命令将内容保存到“.CSV”时,通常会将其转换为“.CSV”分隔符一个逗号。

通常使用 'EVAL()' + 'replace()' ,你可以用你想要的任何东西来替换它......
而不是'replace()',我更喜欢使用'split()',就像我在你之前提到的那样Qt 实现等效于全局“replace()”(这将需要 REGEX)并且即使您有超过 2 个地址也将继续工作......:

SET !EXTRACT adress1[EXTRACT]adress2
SET !VAR1 EVAL("var s='{{!EXTRACT}}'; var z=s.split('[EXTRACT]').join('<BR>'); z;")
PROMPT EXTRACT:<BR>_{{!EXTRACT}}_<BR><BR>Addresses:<BR>_{{!VAR1}}_

(在 iMacros 上测试 FF v8.8.2、Pale Moon v26.3.3 (=FF47)、Win10_x64。)

编辑:
并包括“#EANF#”(xN)的情况和任何位置=>请参阅“提示”中的“!VAR2”的内容:

'SET !EXTRACT adress1[EXTRACT]adress2
'SET !EXTRACT #EANF#[EXTRACT]adress2
'SET !EXTRACT adress1[EXTRACT]#EANF#
'>
'SET !EXTRACT address1[EXTRACT]address2[EXTRACT]address3
'SET !EXTRACT #EANF#[EXTRACT]address2[EXTRACT]address3
'SET !EXTRACT address1[EXTRACT]#EANF#[EXTRACT]address3
SET !EXTRACT address1[EXTRACT]address2[EXTRACT]#EANF#

SET !VAR1 EVAL("var s='{{!EXTRACT}}'; var z=s.split('[EXTRACT]').join('<BR>'); z;")
SET !VAR2 EVAL("var s='{{!EXTRACT}}'; var x,y,z; x=s.split('#EANF#[EXTRACT]').join(''); y=x.replace('[EXTRACT]#EANF#',''); z=y.split('[EXTRACT]').join('<BR>'); z;")
PROMPT EXTRACT:<BR>_{{!EXTRACT}}_<BR><BR>Addresses_VAR1:<BR>_{{!VAR1}}_<BR><BR>Addresses_VAR2:<BR>_{{!VAR2}}_

(在 iMacros 上测试 FF v8.8.2、Pale Moon v26.3.3 (=FF47)、Win10_x64。)

请注意使用 'replace()' 代替 'y',我也可以再次使用 'split().join()' 但除了最终的最终 '#EANF#' 之外的所有内容都应该已经由 ' x' 部分,那么一个简单的 'replace()' 就“足够好”来处理最后一个 '#EANF#'。

查看并重新激活所有“SET!EXTRACT”行以测试“#EANF#”的不同案例和不同可能的位置。


推荐阅读