我想格式化将插入文本区域的文本。
文本将具有类似的结构(我注意到了*-*空行。):
Phone
*-*
02.03.2007 My phone is excellent.
*-*
*-*
Phone
02.06.2007 I want new phone.
....
如何删除一个空行,如下例所示?
Phone
02.03.2007 My phone is excellent.
Phone
02.06.2007 I want new phone.
我现在还没有做任何代码
<?php
if(isset($_POST["submit"])) {
$text = $_POST["text"];
$text = .....
}
?>
<form id="form1" name="form1" method="post" action="">
<input style="display:block;" type="submit" name="submit" id="submit" value="Submit" />
<textarea name="text" id="text" cols="45" rows="700">
</textarea>
<textarea name="result" id="result" cols="45" rows="700">
<?php echo $text; ?>
</textarea>
</form>
尝试preg_replace php函数
<textarea name="result" id="result" cols="45" rows="700">
<?php echo preg_replace('/[^A-Za-z0-9'-]/', '', $text); ?>
</textarea>
我不明白为什么其他答案在这种情况下使用正则表达式,str_replace
会很好地工作:
$text = str_replace("'r'n'r'n", "'r'n", $text);
Windows和Unix的换行符不同,Windows有额外的回车符('r
)。您可能还想了解一下PHP常量PHP_EOL
。