我想在句子中捕获一组特定的字符串,如:
Agent/889 (SIP/1011 from SIP/1011) blablabla (Not in use) blablabla (last was 6 secs ago)
Agent/889 (SIP/1011 from SIP/1011) blablabla (Unavailable) blablabla
我在这个正则表达式中获取了我想要的所有信息:
Agent\/(\d{3})\s\(SIP\/(\d{4}).*\).*(In use|Not in use|Unavailable)\).*
但是,我希望得到一个#4组,如果存在,则捕获"中的内容。#lasts"。我试过像这样的正则表达式:
Agent\/(\d{3})\s\(SIP\/(\d{4}).*\).*(In use|Not in use|Unavailble)\).*(last was \d{1,} secs ago)?
但#4组总是在数组中得到一个空值,即使该字符串包含正则表达式中的文本。我使用PHP的preg_match_all函数,在此站点中进行模拟:PHP Live Regex。