在php中从具有某些特定模式前后的字符串中提取数字
我知道那里有很多帖子,但我真的找不到任何匹配项。我有一个字符串
"com/i598816441262.htm?sourceType=item&ttid=227200"
我想提取 'i' 和 '.' 之后的数字,在示例中为 598816441262,我可以针对整个内容,“/i598816441262”。但我只想要数字,如果我能做一次,我不想做两次。
求求各位大大给点建议!
回答
似乎你正在寻找环顾四周,这是零长度断言,像这样 (?<=/i)d+(?=.)
(?<=/i)意味着它/之前必须有。d+表示一堆数字。(?=.)意味着必须.在它之后。
所以,/i在他们之前和.之后的一堆数字。
在 PCRE 中,您还可以使用/iKd+(?=.),K保持它之前的内容不匹配。