[英]Regex - Capturing an optional string
我想在一个句子中捕获一组特定的字符串:
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组,该组捕获(如果存在)“最后一次是#秒前”中的内容。 我已经尝试过使用正则表达式:
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 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.