V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
y051313
V2EX  ›  问与答

请教一个字符串替换的问题

  •  
  •   y051313 · 2014-04-13 22:40:32 +08:00 · 2275 次点击
    这是一个创建于 3878 天前的主题,其中的信息可能已经有所发展或是发生改变。
    字符串:
    variant of 紙|纸[zhi3]; paper;

    我想把 紙|纸[zhi3] 中|之前和[之后的内容删除,只保留 “纸”,并以"纸"为参数添加链接,最终得到类似下面的这种
    variant of <a href='search?id=纸'>纸; paper;

    请问用PHP或者JS怎么做?现在想到的是按照;拆分,然后在按照空格拆分,判断是否有|出现,有的话,执行查找、替换,有更简便的办法吗?

    谢谢
    5 条回复    1970-01-01 08:00:00 +08:00
    casparchen
        1
    casparchen  
       2014-04-13 22:53:41 +08:00
    为嘛不正则式
    JoyNeop
        2
    JoyNeop  
       2014-04-14 06:37:57 +08:00
    var a1 = raw.slice(0, raw.indexOf('[')) + raw.slice(raw.indexOf(']') + 1)
    var zhi = raw.slice(13, 14)
    var paper = raw.slice(raw.indexOf(';') + 1)
    var out = 'variant of <a href="search?id=' + zhi + '">' + zhi + '; ' + paper + '</a>'
    Mutoo
        3
    Mutoo  
       2014-04-14 09:26:23 +08:00
    var str = "variant of 紙|纸[zhi3]; paper;";
    var zhi = str.split(" ")[2].split("|")[1].split(/[\[\]]/)[0];
    var paper = str.split(" ")[3].split(";")[0];
    y051313
        4
    y051313  
    OP
       2014-04-14 11:25:36 +08:00
    @JoyNeop
    @Mutoo
    已发送感谢。多谢了
    JoyNeop
        5
    JoyNeop  
       2014-04-14 12:02:42 +08:00 via iPad
    @Mutoo 这点小事也上正则囧丁乙……
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1040 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 23:09 · PVG 07:09 · LAX 15:09 · JFK 18:09
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.