掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 1150|回复: 14

[求助] 【问题已解决】做锚跳时href="entry://go#中的go如何添加?

[复制链接]

该用户从未签到

发表于 2016-6-2 22:23:29 | 显示全部楼层 |阅读模式
本帖最后由 qiuhao1112 于 2016-6-4 16:04 编辑
# r" v0 B2 P4 W( {$ U6 \" f9 Q# ~9 P1 A7 S; e
最近要做一个词典提取短语并实现外部锚跳转到指定id位置 源码如下:
5 h. Z# [1 s$ p% |0 N0 W6 I7 x9 O代码1:, r/ Y0 Z" J5 e$ }* }. Y
  1. go; R, f/ X7 b# @( E, |+ O: e
  2. <div id="a">key1</div>/ Q5 T1 j% a, |6 Q5 ?( ~8 D0 b
  3. <div id="b">key2</div>0 q  H& _% ^1 V- B
  4. <div id="c">key3</div>
    : _" N' \( m! p: o2 Q6 x4 W9 `
  5. <div id="d">key4</div>
复制代码

) t( \: r( M6 @- ]( s' P
( b5 t6 p* e$ A: p# e" `( c我能用正则替换出如下代码:& c0 Q5 Q) ]; x
代码2:7 U+ q) N4 B. d
  1. key1
      B+ [) X- x- Z
  2. <a href="#a">key1</a>
    ' D/ O; j! p+ w( P4 I7 |& O$ `
  3. key2$ ~" E: K1 Y9 o. e  H0 |
  4. <a href="#b">key2</a>( k, Y( v8 \) R+ ?! ^( M
  5. key39 X7 T6 I5 z0 }9 N4 g) t1 m3 A
  6. <a href="#c">key3</a>0 A' b: U3 A7 |, R
  7. key4
    ) k' ^. F" P! E! y( ^. ?
  8. <a href="#d">key4</a>
复制代码
8 u; u3 i0 o- K: r2 I; o
; }" j' D1 j' R( y* d
可是并没有实现我要的跳转功能,于是我分析了前辈的有跳转功能的源文件,要实现锚跳必须是<a href="entry://go#a">,而不是<a href="#a">,那么问题来了,怎么在代码1中含有<div>标签的每一行中均添加上go呢?请问该用什么正则来实现?) }8 Q) C$ V4 C; [2 E* Y

) x6 G0 J. S1 Q2 g! r4 J+ H我想要实现的目标代码就像下面这样:
& q0 q; Z2 G% x( f. t' ]6 p( s* q9 X代码3:
& N, }) R3 @" ^; d

  1. + x2 @2 T( d- O
  2. key1
    $ j' P+ _" g0 f1 n3 E$ O
  3. <a href="entry://go#a">key1</a>2 O% R! S1 y0 v; k, P3 T  o, T; |! V
  4. key2
    ) B! I  ~( R$ {! _# F- l
  5. <a href="entry://go#b">key2</a>  w  W) F2 g! A, d6 {, ~- r6 W
  6. key3
    1 F2 z) s0 ~, K- R- M
  7. <a href="entry://go#c">key3</a>
    * M; Y2 M' G& F! D$ v
  8. key4
    9 E& ~' U0 o1 m
  9. <a href="entry://go#d">key4</a>
    4 c( Y2 P( i( _% k% \
复制代码
8 @) v# _5 ^& H4 B( h( ~

8 x; r7 p+ Y: k9 C麻烦大神给个提示,万分感激!

该用户从未签到

发表于 2016-6-3 15:04:26 | 显示全部楼层

0 t3 i3 `/ H7 T4 @+ z6 eQ: 那么问题来了,怎么在代码1中含有<div>标签的每一行中均添加上go呢?请问该用什么正则来实现?6 D  k6 B. \1 t- m* p1 I; S8 L; _
用 sunsmile 神器 RegEx Dotext https://pdawiki.com/forum/forum.php?mod=viewthread&tid=11430( u! t- g3 C" r

* `' c" p2 X2 p5 N$ M7 o<div id=+ I3 s) w( S8 i3 }( ]+ G% G
替换为[注意:如下字符串只是示例,实际怎么写看你自己的需求,关键在于这个\h]
/ m& T( e3 |, g. N8 g' [! e<div href="entry://\h" id=
# `$ i6 S2 I  P1 ^- g
6 X( L2 J8 ]7 v! @奥秘在于这个 \h ,就是 mdx 源文件里的 keyword ,是 go 的话,就替换为 go ,是 mao 的话,就替换为 mao 。# |: d) b8 ~  E' l
  j; j# |: P+ T4 ?( U; Q9 W1 u& f" K

9 X; N) P! B0 A% N3 ]+ Q2 D$ Q

该用户从未签到

发表于 2016-6-3 07:00:42 | 显示全部楼层
本帖最后由 lxchen2001 于 2016-6-3 07:03 编辑
& q0 C, F: e+ s. n* t
4 D: e& Z* V6 f- _可以看看这里的示例,应该能解决你提的问题:
( h' D" m3 B" v9 Q
& M2 K7 n$ Z5 b, y3 B0 a/ ^https://www.pdawiki.com/forum/fo ... &extra=page%3D1
' [" i: r2 k8 n9 k3 d  r
7 B- _  N/ E; }) O0 f- 词条内部跳转方法 <a href="entry://#1">目录一</a> (一定要有<a name=1></a>相对应)3 A! j- t4 }# I' s5 m; S+ g& I

( w- j: w" j' d# ]" c5 ?9 L) v例子:
( \& X' Z5 J% g$ F, A* S" |
5 ~) q6 d/ `" H; C. r内部跳转
% e# h' D: v2 b7 w<a name="tb"></a><fieldset style='PADDING-left: 0px;PADDING-BOTTOM: 0px; PADDING-TOP: 0px;DISPLAY: inline;'> &nbsp;目录 &nbsp;<dl id="holder1"><dd><A HREF=entry://#1>目录一</a></dd><dd><A HREF=entry://#2>目录二</a></dd></dl></dl></fieldset>   &nbsp;<h2 class="first"><a name="1"></a>目录一版权信息</h2>  <br>书 名: MDX解决方案<br>  作 者:(美国)(GeorgeSporfford)斯波福特 (美国)(Sivakumwrharinath)海瑞内撤<br>  <A HREF="entry://出版社/">出版社</A>: <A HREF="entry://清华大学出版社/">清华大学出版社</A><br>  出版时间: 2008<br>  <A HREF="entry://ISBN/">ISBN</A>: 9787302183815<br>  开本: 16<br>  定价: 78.00 元<h2 class=""><a name="2"></a>目录二</h2> 

该用户从未签到

 楼主| 发表于 2016-6-3 08:54:06 来自手机 | 显示全部楼层
lxchen2001 发表于 2016-6-3 07:00
1 R/ K* @  }6 z: A% s可以看看这里的示例,应该能解决你提的问题:4 D: Y2 A- q  C6 f
- p0 D9 ~1 ]3 G) O1 h' Q/ [
https://www.pdawiki.com/forum/forum.php?mod=viewthread& ...

( N8 w9 B$ Y" y. L- r我的目的是需要跳转到其它词条(页面)的指定id位置,能不能根据我的代码例子说明一下您的方法?  您的例子我看的很乱呀

该用户从未签到

发表于 2016-6-3 14:27:09 | 显示全部楼层
qiuhao1112 发表于 2016-6-3 08:54$ p6 X5 h: E) [% f- I, n% d
我的目的是需要跳转到其它词条(页面)的指定id位置,能不能根据我的代码例子说明一下您的方法?  您的例子 ...
4 p/ i* D5 W: ^/ f7 W/ ?5 s
你可以下载一下那个帖子的示例看看。我贴上的是示例的内容。
2 L' u. g% z$ n% v# n5 f* u, [) M. ]- v% t- T
你试试在Div ID那里加一个TAG, 4 e  G) J) A1 `! o2 }
<div id="a"><a name=a>key1</a></div>9 c  H  _6 w7 @& L) _

该用户从未签到

 楼主| 发表于 2016-6-3 16:01:47 | 显示全部楼层
本帖最后由 qiuhao1112 于 2016-6-3 16:08 编辑 + N/ u3 ]8 O; i3 y* X4 ]2 t; Q' x
Oeasy 发表于 2016-6-3 15:04
' n+ B1 @; E& a8 i. kQ: 那么问题来了,怎么在代码1中含有标签的每一行中均添加上go呢?请问该用什么正则来实现?
9 Z: z7 Y5 x9 j. ^& @3 _用 sunsmi ...

& Q$ ]1 C: w, Y1 `2 J0 K4 U. c% u
$ N) [8 P& J# J4 ~: h8 z$ P; BO大你好,你说的实现不了我要的目的, 可能我理解有误或者是没把情况讲清楚,我想要替换的并不是只有一个关键词,而是有n多个关键词,再举个简单明了的例子7 Y% U  t0 _. r  U* ^6 ^5 |

+ a# Q( E) ]3 ?+ u' G7 I. W4 i3 l1 B' u代码5:
  1. ...
    : [  g: g2 @8 E$ z5 m
  2. go' Q" O4 M  B0 y* ^& z4 @
  3. <div>1</div>
    2 Y9 s% y7 V/ x6 @- X( F( `6 j: t
  4. <div>2</div>
    : j/ V( d. @, e/ {
  5. <div>3</div>
    2 N7 S: g5 G/ p$ B
  6. . ~/ o- C. h3 ?
  7. to
    ! Q9 u' y$ B# H) c; w
  8. <div>1</div>
    2 @% f7 c. q* n0 o+ x9 @% n+ w
  9. <div>2</div>
    6 ^7 c4 p3 p5 Q1 {7 s
  10. <div>3</div>; Q" C' L  e% i6 A. l$ R& j# ]( K
  11. 9 q: ]. P. `2 H  ?' y
  12. be
    * @  I, i  n, o
  13. <div>1</div>: ]5 E9 V+ j2 J9 y# ?. z5 [
  14. <div>2</div>
    % Z( O3 p' @4 g/ D$ b: T
  15. <div>3</div>
    / H: k* B1 j4 r) d
  16. 9 }* ]( g+ X1 ^3 Q0 ^
  17. do/ d; w; x0 j, K( d( |7 X) l1 g
  18. <div>1</div>
    6 Q/ @6 H5 R6 X' a2 v
  19. <div>2</div>. G) o, K& z& z$ T
  20. <div>3</div>
    + |4 R, d2 B3 P, U% N
  21. ...
复制代码

) B7 E8 M4 Y5 W* u. x
/ X: F; J; L8 H7 A& U- M8 z; t5 k2 y我想要实现的代码:
+ ^& n( f, Y! k' C6 f代码6:/ L# N. ~' M% u$ S) _0 Q2 ?
  1. ...' b0 H  T' R* ~) g+ }% E: ?4 X
  2. go
    ; b* T: d) j- h; x9 r" ]
  3. go<div>1</div>& t$ ~, h1 {, ~+ ]: o. i4 t% b
  4. go<div>2</div>4 O  D" y* i- _0 u2 f# }
  5. go<div>3</div>
    # a) [8 r9 Z! B; Y

  6. 2 {% X8 }8 F! r
  7. to
    7 Z7 e, N8 m5 e5 {9 X$ @; l
  8. to<div>1</div>
    7 r) ^2 a( ]- p/ I0 p. \9 }
  9. to<div>2</div>
    ; }, J/ p' P/ ~5 U: e* d
  10. to<div>3</div>& [* \2 H# G( j6 _

  11. # N& ^3 R" k+ Q
  12. be
    : K6 y9 t5 J# O, m: R
  13. be<div>1</div>9 x) x) q. ]: ^9 V
  14. be<div>2</div>
    " ?* i* |4 ]+ O  P& Y* V% V4 S
  15. be<div>3</div>7 G* Y) E$ e! e( b2 B. Z7 G
  16. ! |2 \8 ]/ g) m5 L6 ~
  17. do6 U/ X( O  u& {3 ?# n/ Q
  18. do<div>1</div>
    # @0 \/ @; C0 |: g. N2 y9 @( d5 Y
  19. do<div>2</div>( Y- a# h& O( z8 F
  20. do<div>3</div>' B' R9 u- t; g# c4 k8 M7 s& r
  21. ...
复制代码

% P9 R: _; G0 P4 j请问能用什么方法把代码5都变成代码6呀?
- ?; _7 H" M3 Q% o

点评

這個情況,正則可能無法處理了,Python 試試。  发表于 2016-6-3 16:11

该用户从未签到

发表于 2016-6-3 16:21:38 | 显示全部楼层
qiuhao1112 发表于 2016-6-3 16:01
1 w/ f5 j' _1 p8 D+ uO大你好,你说的实现不了我要的目的, 可能我理解有误或者是没把情况讲清楚,我想要替换的并不是只有一 ...

2 j) D: r" {% {& K$ S& L( Y" ?$ T查找
  1. ^(<div>)
复制代码
替換為
  1. \h\1
复制代码
試試。

该用户从未签到

 楼主| 发表于 2016-6-3 16:28:42 | 显示全部楼层
PurlingNayuki 发表于 2016-6-3 16:21
, Y6 z+ `2 E& Y0 G5 V0 j查找替換為試試。

3 x7 J& g/ g! @" Z* }好像不行啊  ,请问\h是什么意思?我用的是EmEditor

该用户从未签到

发表于 2016-6-3 18:22:52 | 显示全部楼层
qiuhao1112 发表于 2016-6-3 16:01# X  ?) L5 J$ ^! j& o3 J6 g
O大你好,你说的实现不了我要的目的, 可能我理解有误或者是没把情况讲清楚,我想要替换的并不是只有一 ...

( L* d9 V5 j6 t1 @' n7 F) J. n  ^1 r& W
  w. b* l( y; R3 J" W
我明白你的问题,回答的也是你的问题。% g5 c+ R' k: b) e. b
如图:代码5.txt 长这样[注意 RegEx Dotext 处理的是能直接 build 为 mdx 的 txt ,也就是必须有</> ,\h 就是 RegEx Dotext  中对 keyword 的引用,正常的正则表达式没有这种引用方式]。# @3 N2 ^( u  J0 W# M8 y+ X
        8 P2 s  ^( D' B- a( X; ?4 A" {+ f
RegEx Dotext
' c5 a; P+ d$ v8 f* b% g9 J
) g4 Y, [/ X$ p6 w0 i" M( P1 V<div>
* h# S' s/ @2 v4 D  s8 G0 Q替换为
! o+ r; D3 t& \8 Z6 L! p  J\h<div>
8 v! U, P* \  {8 y0 L/ c
' d0 z; o4 A3 p& s% B5 g& E/ X       
2 D! E2 [& F* |- I' f1 Y# ]9 J( Y/ m1 c9 N$ @0 p, M5 j
得到的“代码5_Replace.txt”为。
6 A) r- m* J: }+ o5 _" {       
' ]0 M3 |; T: P
$ u* }: H& g" q- J) @6 z# `% `& ]; `* D. S5 g' ?

该用户从未签到

 楼主| 发表于 2016-6-3 19:56:14 | 显示全部楼层
Oeasy 发表于 2016-6-3 18:22
: }) Q  d1 p, ]& L7 D- W/ e; G" j我明白你的问题,回答的也是你的问题。$ g7 r  k  ?3 f9 M/ G
如图:代码5.txt 长这样[注意 RegEx Dotext 处理的是能直接  ...
+ n3 Q3 s, b$ T' V
3 `& q! e! M  w4 |: {$ L: s* F% Z
我在网上搜了,到处都找不到 sunsmile 神器 RegEx Dotext的下载地址,也不知道哪里有下载. 我这里只有 SourceEditor,我按照O大您的方式用正则替换了一下,发现还是没有把关键词添加上去,是不是SourceEditor没有\h功能呢?如果只能用 RegEx Dotext的话,请求O大给个下载地址

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?免费注册

x

该用户从未签到

发表于 2016-6-3 22:34:34 | 显示全部楼层
qiuhao1112 发表于 2016-6-3 19:56
6 d1 l, L% L, X. _. }我在网上搜了,到处都找不到 sunsmile 神器 RegEx Dotext的下载地址,也不知道哪里有下载. 我这里只有  ...

1 R2 s$ B1 ~4 I3 g1 P见附件。
- C! L% Z0 f) w. x* s

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?免费注册

x

该用户从未签到

 楼主| 发表于 2016-6-3 23:40:40 来自手机 | 显示全部楼层
本帖最后由 qiuhao1112 于 2016-6-3 23:46 编辑
, L$ s  f/ t' F# }/ s% `
Oeasy 发表于 2016-6-3 22:34. @; Z* ]) t1 e2 H& N& p0 m5 a2 W
见附件。
( ]+ R6 v9 @! E2 t; S, p

) K. i4 d* F0 ~1 {! \7 r) Z$ x非常感谢O大不厌其烦地耐心解答,请受我一拜,谢谢!
  • TA的每日心情

    2018-6-16 18:13
  • 签到天数: 158 天

    [LV.7]常住居民III

    发表于 2018-5-4 16:18:04 | 显示全部楼层
    Oeasy 发表于 2016-6-3 22:345 M& W5 T& {% K* i
    见附件。
    9 t' l1 A7 }/ P  V8 Q
    o大 好想要使用这个软件 但是只对指定用户下载 请问是否能够取消这个权限呢 谢谢
  • TA的每日心情

    2018-6-16 18:13
  • 签到天数: 158 天

    [LV.7]常住居民III

    发表于 2018-5-4 16:18:21 | 显示全部楼层
    Oeasy 发表于 2016-6-3 22:34
    " e# @( Y  Y. R5 E1 B, p6 m见附件。

    5 Y! n) e* Q: J0 h8 ~  No大 好想要使用这个软件 但是只对指定用户下载 请问是否能够取消这个权限呢 谢谢
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

    小黑屋|手机版|Archiver|PDAWIKI |网站地图

    GMT+8, 2025-7-9 19:00 , Processed in 0.024322 second(s), 26 queries .

    Powered by Discuz! X3.4

    © 2001-2023 Discuz! Team.

    快速回复 返回顶部 返回列表