正規表現がわからなすぎる!!!
VBAでパターンマッチングさせ、取得した文字列を配列に格納。って処理をやりたい。
というのは、wordpressのpostmetaテーブルには
値が配列で格納されている。
たとえば、こんな形。
a:3:{i:0;s:9:"不定休";i:1;s:12:"年中無休";i:2;s:14:"24時間営業";}
初めの
a:3
は、a=配列ですよ
3=要素は3つありますよ
ということらしい。
で、{}の中は";" で区切られた配列。
この1つの要素は。
i:0;
s:9:"不定休";
という2つがセットで、i=0はインデックス。
s:9:は文字列で9文字はいってます。ということ。
この要素を、中身だけ取得して、配列に収めたい。
つまり
str(3) = {"不定休","年中無休","24時間営業"}
という感じに変換したいのです。
そこで、""で囲まれた文字列をパターンマッチングして取得するのですが。
その正規表現がこれ。
\"(((\\\\\")|[^\"])*)\"
は????
なわけですよ。
でも、SAKURAエディタで検索すると、ばっちりヒットするので。
いたしかたなし。動くんだわ。
よっしゃ、これを使おうとりあえず。
でもvbaで書く場合は \" とはエスケープしないので。
ダブルクォーテーションをchr(34)で置き換えて、以下のように記述。
Chr(34) & "(((\\\\" & Chr(34) & ")|[^" & Chr(34) & "])*)" & Chr(34)
で、動いたからさ。結果オーライっ!!!
意味分かんないけども。
VBAでパターンマッチングさせ、取得した文字列を配列に格納。って処理をやりたい。
というのは、wordpressのpostmetaテーブルには
値が配列で格納されている。
たとえば、こんな形。
a:3:{i:0;s:9:"不定休";i:1;s:12:"年中無休";i:2;s:14:"24時間営業";}
初めの
a:3
は、a=配列ですよ
3=要素は3つありますよ
ということらしい。
で、{}の中は";" で区切られた配列。
この1つの要素は。
i:0;
s:9:"不定休";
という2つがセットで、i=0はインデックス。
s:9:は文字列で9文字はいってます。ということ。
この要素を、中身だけ取得して、配列に収めたい。
つまり
str(3) = {"不定休","年中無休","24時間営業"}
という感じに変換したいのです。
そこで、""で囲まれた文字列をパターンマッチングして取得するのですが。
その正規表現がこれ。
\"(((\\\\\")|[^\"])*)\"
は????
なわけですよ。
でも、SAKURAエディタで検索すると、ばっちりヒットするので。
いたしかたなし。動くんだわ。
よっしゃ、これを使おうとりあえず。
でもvbaで書く場合は \" とはエスケープしないので。
ダブルクォーテーションをchr(34)で置き換えて、以下のように記述。
Chr(34) & "(((\\\\" & Chr(34) & ")|[^" & Chr(34) & "])*)" & Chr(34)
で、動いたからさ。結果オーライっ!!!
意味分かんないけども。