1

如何将一个句子或字符串分成两个不同的部分?

$string = "First Name Last Name on 4/30/13";
$string = "First Name on 4/28/13";
$string = "First Name Last Name";

如何将名称和日期提取到两个不同的变量中?字符串发生变化。它有时有日期,有时没有。

4

3 回答 3

1

最简单的方法是使用explode,可能是这样的:

 list($name, $date) = array_pad(explode(' on ', $string), 2, null);

这会将名称$name和日期分配给$date; 如果没有日期,$date将是null

请注意一个非常愚蠢的事实,explode如果它包含字符串,它会很高兴地分解名称' on '。在这种情况下,这是极不可能的,因为我已经在字符串中包含了周围的空格,但是更天真的爆炸'on'很容易用像“Marion Jones”这样的名字适得其反。

对于更高级的匹配,您必须升级到正则表达式preg_match.

于 2013-04-30T20:46:04.583 回答
0

在我看来,您需要使用正则表达式。

检查preg_matchRegular Expressions的文档。

于 2013-04-30T20:46:58.707 回答
0

你可以这样做,这里是每一个的例子

<?php
$string = "First Name Last Name on 4/30/13";
print_r(explode(" on ", $string));

$string = "First Name on 4/28/13";
print_r(explode(" on ", $string));

$string = "First Name Last Name";
print_r(explode(" on ", $string));

这是输出:

Array
(
    [0] => First Name Last Name 
    [1] => 4/30/13
)
Array
(
    [0] => First Name 
    [1] => 4/28/13
)
Array
(
    [0] => First Name Last Name
)
于 2013-04-30T20:47:30.840 回答