由逗号和新行一起展开
Explode by comma and new line together
我有一个基本的文本区域。当用户输入一些文本时,我用逗号“,”分解单词。现在我也想用新行分隔单词。我该怎么做。
这是我用逗号分解单词的代码部分。
if(isset($_POST["btn"])){
$words = $_POST["inp_text"];
$words_arr = explode(",",$words);
foreach($words_arr as $word){
echo $word."<br>";
}
}
如何向此代码部分添加换行功能。我想,我应该在循环中从 $word
生成一个字符串,而不是在循环之后我应该再次用新行分解这个字符串。
还有更好的办法吗?
为了更好地理解我添加了一些示例。
输入:
apple, melon, a, b, c
输出:
apple melon a b c
输入(换行)
x,y,z,a
b
c
输出:
x y z a b c
<?php
$output = str_replace(array("\n", "\r"), '', $input);
?>
\n
是换行,你换成正常的space。这里绝对不需要复杂的正则表达式!:)
试试这个:
$split_strings = preg_split('/[\ \n\,]+/', $your_string);
您可以使用 preg_split
将字符串拆分为单词,无论是逗号还是换行。
$wordsArray = preg_split('/\W/', $yourString, 0, PREG_SPLIT_NO_EMPTY);
您可以按行拆分输入,然后对于每一行,按单词拆分该行。
<?php
if(isset($_POST["btn"])){
$data = $_POST["inp_text"];
$lines = explode("\n", $data);
foreach($lines as $line)
{
$words = explode(' ', $lines);
foreach($words as $word)
{
echo $word.' ';
}
}
}
我有一个基本的文本区域。当用户输入一些文本时,我用逗号“,”分解单词。现在我也想用新行分隔单词。我该怎么做。
这是我用逗号分解单词的代码部分。
if(isset($_POST["btn"])){
$words = $_POST["inp_text"];
$words_arr = explode(",",$words);
foreach($words_arr as $word){
echo $word."<br>";
}
}
如何向此代码部分添加换行功能。我想,我应该在循环中从 $word
生成一个字符串,而不是在循环之后我应该再次用新行分解这个字符串。
还有更好的办法吗?
为了更好地理解我添加了一些示例。
输入:
apple, melon, a, b, c
输出:
apple melon a b c
输入(换行)
x,y,z,a
b
c
输出:
x y z a b c
<?php
$output = str_replace(array("\n", "\r"), '', $input);
?>
\n
是换行,你换成正常的space。这里绝对不需要复杂的正则表达式!:)
试试这个:
$split_strings = preg_split('/[\ \n\,]+/', $your_string);
您可以使用 preg_split
将字符串拆分为单词,无论是逗号还是换行。
$wordsArray = preg_split('/\W/', $yourString, 0, PREG_SPLIT_NO_EMPTY);
您可以按行拆分输入,然后对于每一行,按单词拆分该行。
<?php
if(isset($_POST["btn"])){
$data = $_POST["inp_text"];
$lines = explode("\n", $data);
foreach($lines as $line)
{
$words = explode(' ', $lines);
foreach($words as $word)
{
echo $word.' ';
}
}
}