我想以下列方式转换字符串。
输入字符串:
WB - KU - 5VWB1\nWB - KU - 5VWB1 (WB - KU - 5VWB1)\nlokaal 2.06
预期输出字符串:
WB - KU - 5VWB1\nlokaal 2.06
其中:"WB - KU - 5VWB1 (WB - KU - 5VWB1)"
可以是任何东西。总有3行。我总是希望删除第二行。
编辑:
我当前的州/代码:
$data = explode("\n", $event["DESCRIPTION"]);
给出:
array(1) { [0]=> string(63) "WB - KU - 5VWB1\nWB - KU - 5VWB1 (WB - KU - 5VWB1)\nlokaal 2.06" }
答案 0 :(得分:2)
这应该适合你:
只是连接从开头到第一个新行的子字符串和最后一个新行的子字符串,例如
所以你做了什么:
Start of the string End of the string | Position of Position of | | the first new line the last new line | ↓ ↓↓ ↓↓ ↓ string: "WB - KU - 5VWB1\nWB - KU - 5VWB1 (WB - KU - 5VWB1)\nlokaal 2.06" └───────┬──────┘ └─────┬─────┘ | | substring(s): "WB - KU - 5VWB1" . "\nlokaal2.06" └───────────────────────┬───────────────────────┘ | result: "WB - KU - 5VWB1\nlokaal"
代码:
$str = "WB - KU - 5VWB1\nWB - KU - 5VWB1 (WB - KU - 5VWB1)\nlokaal 2.06";
echo substr($str, 0, strpos($str, PHP_EOL)) . substr($str, strrpos($str, PHP_EOL));
输出:
WB - KU - 5VWB1
lokaal 2.06
修改强>
正如评论中所显示的那样,您的字符串中只有\n
,因此只需strpos($str, PHP_EOL)
,strrpos($str, PHP_EOL)
重新strpos($str, '\n')
和strrpos($str, '\n')
。< / p>
答案 1 :(得分:1)
版本1字符串\n
$x='WB - KU - 5VWB1\nWB - KU - 5VWB1 (WB - KU - 5VWB1)\nlokaal 2.06';
$y=explode("\\n",$x); //string /n
print_r($y);
版本2实际换行符:
$x="WB - KU - 5VWB1\nWB - KU - 5VWB1 (WB - KU - 5VWB1)\nlokaal 2.06";
$y=explode("\n",$x); //actual line break
print_r($y);
两者的结果:
数组([0] =&gt; WB - KU - 5VWB1 [1] =&gt; WB - KU - 5VWB1(WB - KU - 5VWB1)[2] =&gt; lokaal 2.06)