Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/262.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 逐字逐句_Php_Regex - Fatal编程技术网

Php 逐字逐句

Php 逐字逐句,php,regex,Php,Regex,以Lorem Ipsum文本为例: Lorem ipsum dolor sit amet,是一位杰出的献身者。我们需要一颗钻石,一颗钻石,一颗钻石 我如何使用PHP和regex获得Nulla之后的所有内容?尝试以下方法: $string = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla felis diam, mattis id elementum eget, ullamcorper et purus."; $pr

以Lorem Ipsum文本为例:

Lorem ipsum dolor sit amet,是一位杰出的献身者。我们需要一颗钻石,一颗钻石,一颗钻石

我如何使用PHP和regex获得
Nulla
之后的所有内容?

尝试以下方法:

$string = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla felis diam, mattis id elementum eget, ullamcorper et purus.";
$prefix = "Nulla";
$index = strpos($string, $prefix) + strlen($prefix);
$result = substr($string, $index);

现在,在$1中有了Nulla之后的所有文本,您不想使用一些简单的东西,例如:

$str = substr($lorem, strpos($lorem, 'Nulla'));

如果你不想寻找Nulla,但也不想寻找“NULL”,你可以考虑使用SrPOS而不是Strus… 此代码将在返回值中包含Nulla。如果要排除Nulla,可能需要将其lentgh添加到strpos值,即

$str = substr($lorem, strpos($lorem, 'Nulla') + 5);
最后,如果你需要一些更通用的东西,正如@Francis所建议的:

$needle = 'Nulla'; 
$str = substr($lorem, strpos($lorem, $needle) + strlen($needle));

诚实的ReXEP对于这样的事情是多余的…

不是最好的选择,但你可以考虑以下的套装:

$string = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla felis diam, mattis id elementum eget, ullamcorper et purus.';

preg_match('/Nulla(.*)/',$string, $matches);
print_r($matches);
<?php

$myString = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla felis diam, mattis id elementum eget, ullamcorper et purus.";
$explodedArray = explode("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla",$myString);
echo $explodedArray[1];

你想要从第二句开始的单词吗?或者您想特别地将文本放在“Nulla”之后?如果您想限制结果字符串,请使用substr的第三个参数:
$str=substr($lorem,strpos($lorem,'Nulla'),50)
将返回50个字符,以'Nulla'开头。对于第二个示例,我将进一步介绍:
$sample='Nulla'$str=substr($lorem,strpos($lorem,$sample)+strlen($sample))
使用
strlen
<?php

$myString = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla felis diam, mattis id elementum eget, ullamcorper et purus.";
$explodedArray = explode("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla",$myString);
echo $explodedArray[1];