在 PHP 中查找分隔符之间的子字符串
开发人员经常遇到需要提取夹在特定分隔符之间的子字符串的情况。 PHP 提供了一种简单的方法来完成此任务,无需借助复杂的正则表达式。
GetInnerSubstring 函数
为了简化该过程,PHP 开发人员可以利用 strpos 和 substr 函数创建自定义的 getInnerSubstring 函数。它的工作原理如下:
扩展至多个分隔符
可以扩展 getInnerSubstring 函数来处理同一分隔符的多次出现,并将它们分隔到一个数组中。这是修改后的代码:
function getInnerSubstring($string, $delim) { $start_pos = strpos($string, $delim); $result = array(); while ($start_pos !== false) { $end_pos = strpos($string, $delim, $start_pos + strlen($delim)); if ($end_pos === false) break; $result[] = substr($string, $start_pos + strlen($delim), $end_pos - $start_pos - strlen($delim)); $start_pos = strpos($string, $delim, $end_pos); } return $result; }
用法示例:
$string = "foo I like php foo, but foo I also like asp foo, foo I feel hero foo"; $result = getInnerSubstring($string, "foo"); print_r($result); // Output: [" I like php ", " I also like asp ", " I feel hero "]
此扩展版本允许您检索位于任意数量的分隔符出现之间的子字符串数组.
以上是如何在 PHP 中高效提取分隔符之间的子字符串?的详细内容。更多信息请关注PHP中文网其他相关文章!