我需要你帮助我自己无法做到的模式。
我收到了这个文件:
description1="SIOUH : Authentification Cerbere - Acces"
description2="Acces formulaire authentification SIOUH"
addheader="Pragma: no-cache "
method="get"
url="${AUTH_URL}/login/LoginDispatchAction.do?appId=${APP_ID}&backURL=${APP_URL_ENC}"
errormessage="Phase 1 : Impossible atteindre le formulaire authentification CERBERE pour SIOUH"
serveur="yes"
verifypositive="loginConnectAppliForm"
logrequest="yes" logresponse="no" />
我有一个完美的preg_match_all:
preg_match_all ( '#(.*?)="(.*?)"#s', $contents, $matches, PREG_SET_ORDER ); //Chaque option
我的问题是我可以使用简单的引号而不是双引号,如何更改我的模式来处理它? 例如,我需要像所有其他人一样抓住这条线:
parseresponse='name="conversationId" value="|"'
非常感谢你的帮助。
答案 0 :(得分:1)
尝试使用像这样的正则表达式
^(.*?)=[\'"](.*?)[\'"]$
答案 1 :(得分:1)
使用反向引用要求结账报价与开头报价相匹配:
'#(.*?)=([\'"])(.*?)\2#'