目前我想从我的postgreSQL数据库传递链接到我的RSS提要解析器。
到目前为止,我能够将字符串读取的单个字符串数组转换为:
{"(\"(http://www.delawareriverkeeper.org/rss.xml)\")","(\"(http://www.littoralsociety.org/index.php?format=feed&type=rss)\")","(\"(\"\"http://www.nj.gov/dep/newsrel/newsrel.rss \"\")\")"}
只有一个字符串。
我们希望删除额外的parantheses,引号,反斜杠和括号,使其显示为" http://www.delawareriverkeeper.org/rss.xml"," http://www.littoralsociety.org/index.php?format=feed&type=rss"等等。
然后我们计划将它拆分成另一个数组以传递给我们的解析器。
我认为str_replace是我正在寻找的,但我实际上无法弄清楚要删除额外引号的内容。
答案 0 :(得分:0)
<?php
$raw = '{"(\"(http://www.delawareriverkeeper.org/rss.xml)\")","(\"(http://www.littoralsociety.org/index.php?format=feed&type=rss)\")","(\"(\"\"http://www.nj.gov/dep/newsrel/newsrel.rss \"\")\")"}';
$clean = str_replace('\"', '', $raw);
$clean = str_replace(')', '', $clean);
$clean = str_replace('(', '', $clean);
$clean = str_replace('}', '', $clean);
$clean = str_replace('{', '', $clean);
$clean = str_replace(' ', '', $clean);
echo $clean;
“http://www.delawareriverkeeper.org/rss.xml”, “http://www.littoralsociety.org/index.php?format=feed&type=rss”, “http://www.nj.gov/dep/newsrel/newsrel.rss”
答案 1 :(得分:0)
以下正则表达式将任何网址与数组匹配,因此无需&#34; 将其拆分为另一个数组以传递到我们的解析器 &#34;
<?php
$subject= '{"(\"(http://www.delawareriverkeeper.org/rss.xml)\")","(\"(http://www.littoralsociety.org/index.php?format=feed&type=rss)\")","(\"(\"\"http://www.nj.gov/dep/newsrel/newsrel.rss \"\")\")"}';
preg_match_all('/\b(?:(?:https?):\/\/|www\.)[-A-Z0-9+&@#\/%?=~_|$!:,.;]*[-A-Z0-9+&@#\/%=~_|$]/ix', $subject, $result, PREG_PATTERN_ORDER);
print_r($result[0])
<强>输出:强>
Array
(
[0] => http://www.delawareriverkeeper.org/rss.xml
[1] => http://www.littoralsociety.org/index.php?format=feed&type=rss
[2] => http://www.nj.gov/dep/newsrel/newsrel.rss
)