所以我知道如何從一個PHP字符串中提取文本時,它清晰地由兩個不同的字符(即[ABC])分隔內相同的兩個角色之間找到的文字...一個PHP串
然而,我現在面臨一個問題,我需要提取位於同一個字符('/')的兩個實例之間的文本。更棘手的是,這可能會在同一個字符串中發生多次。
一個例子可以說明清楚:
"This is /a/ silly ex/amp/le of what I /me/an."
在這種情況下,我想抓住'a', 'amp' and 'me'
。
這些例子顯示了我可能遇到的各種情況(不同的長度和情況,我沒有抓住整個單詞而是一個單詞中的字母)。
我已經試過:
('/(\/.+?)+(\/)/i')
但這一如預期,抓住了第一個和最後斜線之間的一切。理想將是一種方法來匹配,直到NEXT出現的斜線,而不是最後一個...
我一直在使用谷歌搜索相當一段時間,但我只想出兩個不同的分隔符。
只是一個提示,你不必使用'/'作爲分隔符。當你的搜索模式包含'/'時,它可以提高可讀性以使用不同的字符並避免轉義:'#/。+?/#' – miken32
@ miken32啊,是的,好點。我以前用過這個(具有諷刺意味的是,對於更短的正則表達式),但沒有想到在這裏使用它。 – asg