我的字符串是这样的:
$brazil = "Afonso Cláudio
Água Doce do Norte
Águia Branca";
我想将此字符串拆分为如下数组:
Brazil (
[0] => "Afonso Cláudio"
[1] => "Água Doce do Norte"
[2] => "Águia Branca"
)
答案 0 :(得分:1)
由于可能会在换行符上爆炸(),但此解决方案的用处有限,因为它取决于您的平台使用的字符。一行可以使用以下字符中的一个或组合终止:换页(" \ f"),回车(" \ r"),换行符(&#34) ; \ n&#34)。以下代码相应地拆分$ brazil中包含的字符串值,如下所示:
$(document).ready(function(){
var current = 0;
$('.add').click(function(){
current += 4;
$('.box').html(current);
});
});
请参阅live code
使用此正则表达式可以获得相同的结果:<?php
$brazil = "Afonso Cláudio
Água Doce do Norte
Águia Branca";
$arr = preg_split("/[\f\r\n]+/",$brazil );
var_dump($arr);
;见here。
有关详细信息,请参阅preg_split()。
返回使用explode(),而不是硬编码换行符,使用内置常量PHP_EOL,如下所示:
"/\R/"
请参阅demo。
PHP_EOL是一个内置常量,旨在匹配操作系统用于终止行的任何字符。
答案 1 :(得分:0)
要做到这一点,你需要简单地将你的字符串分成多行。为此,您需要使用explode()
方法将字符串除以某个字符。
在您的情况下,您希望将字符串除以新行。要做到这一点,你需要这个:
$result = explode("\n", $brazil)
\n
是代表新行的escape character。
该方法将返回此数组:
array(3) {
[0]=>
string(16) "Afonso Cláudio
"
[1]=>
string(20) "Água Doce do Norte
"
[2]=>
string(13) "Águia Branca"
}
注意:唯一剩下的问题是你仍然在每个字符串的末尾都有换行符。您可以解决这个问题,即从数组中的每个字符串中删除最后一个字符。有关如何执行此操作的详细信息,请参阅this question。