我必须将旧网站转换为CMS,并且我目前遇到的其中一个难题是目前有900多个文件夹,每个文件夹中最多包含9个文本文件。我需要将最多9个文本文件合并为一个,然后将该文件用作导入CMS的文件。将delimeters中的文本转换为有效的url
文件连接和导入工作正常。
我面临的挑战是解析文本文件中的一些文本。
文本文件包含在
Some text [http://xxxxx.com|About something] some more text
我用这个代码转换这种格式的URL
if (substr ($line1, 0, 7) !=="Replace") {
$pattern = '/\\[/';
$pattern2 = '/\\]/';
$pattern3 = '/\\|/';
$replacement = '<a href="';
$replacement3 = '">';
$replacement2='</a><br>';
$subject = $line1;
$i=preg_replace($pattern, $replacement, $subject, -1);
$i=preg_replace($pattern3, $replacement3, $i, -1);
$i=preg_replace($pattern2, $replacement2, $i, -1);
$line .= '<div class="'.$folders[$x].'">'.$i.'</div>' ;
}
它可能不是最有效的代码,但它的工作原理,并因为这是一次性锻炼执行时间等不是问题。
现在,我似乎无法编码的问题。一些文本文件的URL的都是这种格式
Some text [http://xxxx.com] some more text
模式匹配,我有以上发现模式和模式2,但因为没有pattern3的URL在输出格式不正确。
正则表达式不是我的特长有没有办法来修改我上面有什么或有另一种方式来在我的输出中获得格式正确的url或将需要解析输出第二次寻找格式不正确的url并在将其写入输出文件之前进行更正?
所以你需要通过'http:// xxxx.com'吧? –