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

2014-04-13 22:40:32 +08:00
 y051313
字符串:
variant of 紙|纸[zhi3]; paper;

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

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

谢谢
2224 次点击
所在节点    问与答
5 条回复
casparchen
2014-04-13 22:53:41 +08:00
为嘛不正则式
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
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
2014-04-14 11:25:36 +08:00
@JoyNeop
@Mutoo
已发送感谢。多谢了
JoyNeop
2014-04-14 12:02:42 +08:00
@Mutoo 这点小事也上正则囧丁乙……

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/108421

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX