Php 我需要一个正则表达式来解析FTP URL
有人能帮我构造一个preg_匹配模式来匹配这个数据吗 我有这样的数据Php 我需要一个正则表达式来解析FTP URL,php,regex,Php,Regex,有人能帮我构造一个preg_匹配模式来匹配这个数据吗 我有这样的数据 ftp://username:password@server <br> ftp://username:password@server <br> ftp://username:password@server <br> ftp://username:password@服务器 ftp://username:password@服务器 ftp://username:password@服务器 ec
ftp://username:password@server <br>
ftp://username:password@server <br>
ftp://username:password@server <br>
ftp://username:password@服务器
ftp://username:password@服务器
ftp://username:password@服务器
ect
我想要一个preg_match来匹配每一行作为变量,并在foreach循环中使用它
谢谢你不需要预赛。你可以使用explode。确保在分解后使用array_pop消除最后一个空键
<?php
$linkArray = explode(" <br>",$links);
array_pop($linkArray);
?>
现在,数组的每个值将包含链接,但不包含“br”标记。我想应该可以
您的数据是否按以下方式显示
$str= "ftp://username:password@server <br>
ftp://username:password@server <br>
ftp://username:password@server <br>";
$str=”ftp://username:password@服务器
ftp://username:password@服务器
ftp://username:password@服务器
”;
如果是,我的解决方案将起作用 在简单的情况下是。。。但您应该检查RFC,以查看这些URL中允许或不允许哪些字符
<?php
$lines=explode("\n","ftp://username:password@server <br>
ftp://username:password@server <br>
tp://username:password@server <br>
ftp://username:password@server <br>");
foreach ($lines as $line) {
if (preg_match('/^ftp:\/\/[\da-z]+:[^\@]+\@[^\s]+ <br>\s*$/',$line)) {echo "$line is ok\n";}
}
不,explode只返回整个字符串,我需要将字符串分成数组变量所有三行url都在一个字符串中?list($var1,$var2,$var3)=explode(…)
?行上拆分有什么问题?你想要正则表达式做什么?如果您试图获取URL的组件,请查看parse\u URL()
。