昨天我問了一個問題,得到了幾個人的高度回答(謝謝)。PHP - 我如何在它之前提取一個子字符串+ X個字符?
新的問題:)
我想提取字符串中的唯一子,也可拍攝人物的X號之前。有沒有任何功能允許這個?
我剛剛發現strrpos() - 這可能會這樣做。
昨天我問了一個問題,得到了幾個人的高度回答(謝謝)。PHP - 我如何在它之前提取一個子字符串+ X個字符?
新的問題:)
我想提取字符串中的唯一子,也可拍攝人物的X號之前。有沒有任何功能允許這個?
我剛剛發現strrpos() - 這可能會這樣做。
我不認爲有一個內置的做到這一點,但是這應該做的伎倆:
function subbef($str, $sub, $bef)
{
$pos = strpos($str, $sub);
if ($pos === false || $pos < $bef) {
return false;
}
return substr($str, $pos - $bef, strlen($sub) + $bef);
}
用法是這樣的:
subbef('test string here', 'string', 3); //"st string"
謝謝!上帝你們鄉親很快:) –
,也可以通過正則表達式做到這一點:
<?php
function get($needle, $haystack, $before){
preg_match($v="/.{".$before."}$needle/", $haystack, $matches);
return $matches[0];
}
echo get("hello", "I just want to say hello bobby!", 3);
謝謝 - 這個作品太:) :) –
如果'needle'包含特殊字符?我會建議'preg_quote',但正則表達式看起來像是從這裏開始的矯枉過正:)。 – Corbin
鬼鬼祟祟的preg_split,但看起來不像是我可以「倒退」來自給定位置的X個角色。有沒有切和乾的功能來做到這一點? –