0

自分では出来ないパターンで助かります。

私はこのファイルを手に入れました:

    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="|"'

どうもありがとうございました。

4

2 に答える 2

1

これを正規表現で使用してみてください

^(.*?)=[\'"](.*?)[\'"]$
于 2012-09-03T07:03:54.690 に答える
1

後方参照を使用して、終了引用符を開始引用符と一致させる必要があります。

'#(.*?)=([\'"])(.*?)\2#'
于 2012-09-03T07:42:22.100 に答える