我目前在页面渲染方法中实现了一个替换功能,它替换了常用的字符串 - 例如用根替换 [cfe] 到客户前端。这是因为该值可能会根据站点的版本而有所不同 - 例如,图像文件夹的根目录([imagepath])
处于/Images
开发和实时状态,但/Test/Images
处于测试状态。
我有一个产品目录,我想将其更改[productName]
为指向该产品目录页面的链接。我想浏览整个页面并用[someValue]
相关链接替换所有实例。目前,我通过遍历产品数据库中的所有产品并替换[productName]
为该产品目录页面的链接来做到这一点。但是,这仅限于数据库中存在的产品。当前已删除的产品的“链接”不会被替换,因此[someValue]
将显示给用户。这看起来不太好。
所以你应该能够从中看到我的问题。有谁知道一种方法可以轻松实现我想要的目标?我可以使用正则表达式,但我没有太多经验。如果这是最简单的方法,使用“ For Each Match As String In Regex.Matches(blah, blah)
”,那么我愿意进一步研究。
但是在某些时候,我想更进一步 - 例如设置页面布局,例如 3 列,图像右上角使用[layout type="3colImageTopRight" imageURL="imageURL"]Content here[/layout]
. 我想我现在可以做到这一点,但我不知道如何处理这个imageURL
问题,比如说,[Image:Product01.gif]
(使用regex.match("[[a-zA-Z]{0,}]")
我认为会匹配[layout type="3colImageTopRight" imageURL="[Image:Product01.gif]
(它不会到达布局标签的末尾)。显然上面不太行,因为我没有在匹配字符串或任何东西中包含双引号,但你明白了一般的想法。你应该能够大致了解我正在做什么以及我正在尝试做什么尽管。
有没有人有任何想法或指示可以帮助我解决这个问题?另外,如果这不是严格的令牌替换,那么请指出它是什么,以便我可以进一步开发它。
Aristos - 希望重新解释这一点可以解决困惑。
提前致谢,
问候,
理查德克拉克