正则表达式 – PHP外观
发布时间:2020-12-14 06:02:33 所属栏目:百科 来源:网络整理
导读:我有一个字符串,例如: $foo = 'Hello __("How are you") I am __("very good thank you")' 我知道这是一个奇怪的字符串,但请跟我一起:P 我需要一个正则表达式来查找__之间的内容(“在这里查找内容”) 并把它放在一个数组中. 即正则表达式会找到“你好吗”
我有一个字符串,例如:
$foo = 'Hello __("How are you") I am __("very good thank you")' 我知道这是一个奇怪的字符串,但请跟我一起:P 我需要一个正则表达式来查找__之间的内容(“在这里查找内容”) 即正则表达式会找到“你好吗”和“非常好,谢谢你”. 解决方法
试试这个:
preg_match_all('/(?<=__(").*?(?="))/s',$foo,$matches); print_r($matches); 意思是: (?<= # start positive look behind __(" # match the characters '__("' ) # end positive look behind .*? # match any character and repeat it zero or more times,reluctantly (?= # start positive look ahead ") # match the characters '")' ) # end positive look ahead 编辑 而正如格雷格所说:有些人不太熟悉环顾四周,将它们排除在外可能更具可读性.然后匹配所有内容:__(“,字符串和”)并在括号内包装与字符串匹配的正则表达式.* ?,以仅捕获这些字符.然后你需要通过$matches [1]获得你的比赛.演示: preg_match_all('/__("(.*?)")/',$matches); print_r($matches[1]); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |