是否保证每个解决方案之间都有换行符?是的...
在javascript中,您可以使用以下解决方案之一。
使用该split
方法,您可以执行以下操作:
results = myString.split(/[\r\n]+/);
使用match()
您可以执行以下操作的方法,这将匹配不是换行符的部分。
results = myString.match(/[^\r\n]+/g);
在php中,您可以使用以下解决方案之一完成您想要的任务。
$wanted = preg_split('~\R+(?!$)~u', $data);
print_r($wanted);
看live working demo
\R
匹配通用换行符;也就是说,任何被 Unicode 视为换行序列的东西。\v
这包括由(vertical whitespace) 和多字符序列匹配的所有字符\x0D\x0A
。要正确使用,您需要启用u
修饰符。修饰符打开 PCRE的u
附加功能,并且模式字符串被视为 UTF-8。
我在 with (end of line) 之后使用了否定的前瞻,$
这样你就不会包含空白。
您可以在此处使用否定来避免使用拆分和匹配。
$wanted = preg_match_all('~[^\r\n]+~', $data, $matches);
print_r($matches);
看live working demo
输出
Array
(
[0] => The study of standards for what is right and what is wrong is called _.
[1] => a. pure science
[2] => b. applied science
[3] => c. ethics
[4] => d. technology
[5] => ... unknown number of choices ...
[6] => ANS: C
)