最近我posted a question用于用短代码替换数据库中的iframe。它确实适用于某些内容,但对于其他一些内容,它会导致不一致,从而产生类似
的字符串[soundcloud url="http://api.soundcloud.com/tracks/106645167" frameborder="no" scrolling="no" width="100%" height="166"></iframe>"]
这应该是
[soundcloud url="http://api.soundcloud.com/tracks/106645167"]
我认为这是由于数据库中的iframe不同造成的。我需要知道,如果有任何其他方法可以解决我的数据库中的问题。
答案 0 :(得分:0)
我有点困惑,现在你要转换错误的输出
[soundcloud url="http://api.soundcloud.com/tracks/106645167" frameborder="no" scrolling="no" width="100%" height="166"></iframe>"]
到右边 outut?
[soundcloud url="http://api.soundcloud.com/tracks/106645167"]
如果是这样(假设所有实例都是相同的格式:即首先是url),那么以下内容将起作用:
preg_replace('/(\[soundcloud url=".*?").*?(\])/', '$1$2', $string);
以上正则表达式匹配
[soundcloud url="all characters before" all characters before]
并将其替换为
[soundcloud url="all chracters before"]