在某个位置之前找到第一个子串的出现

时间:2022-09-17 23:41:02

In PHP, if I have a long string, IE 10'000 chars, how would you suggest I go about finding the first occurence of a certain string before and after a given position.

在PHP中,如果我有一个长字符串,IE 10'000字符,你会怎么建议我在给定位置之前和之后找到某个字符串的第一个出现。

IE, if I have the string:

IE,如果我有字符串:

BaaaaBcccccHELLOcccccBaaaaB

I can use strpos to find the position of HELLO. How could I then go about finding the position of the first occurence of B before HELLO and the first occurence of B after HELLO?

我可以使用strpos找到HELLO的位置。那么我怎么能在HELLO之前找到B的第一次出现的位置和HELLO之后B的第一次出现?

1 个解决方案

#1


0  

Given the position…

鉴于这个位置......

To find the first occurrence before, you can take the substr() before the match and use strrpos().

要查找之前的第一个匹配项,可以在匹配之前使用substr()并使用strrpos()。

To find the first occurrence after, you can still use strpos() and set the offset parameter.

要查找之后的第一个匹配项,您仍然可以使用strpos()并设置offset参数。

#1


0  

Given the position…

鉴于这个位置......

To find the first occurrence before, you can take the substr() before the match and use strrpos().

要查找之前的第一个匹配项,可以在匹配之前使用substr()并使用strrpos()。

To find the first occurrence after, you can still use strpos() and set the offset parameter.

要查找之后的第一个匹配项,您仍然可以使用strpos()并设置offset参数。