2021-04-16 CS ExcelVBADiaryさんの正規表現クイズ

自分用にまとめました。
6
前へ 1 ・・ 3 4 次へ
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

#正規表現クイズ (No.18) ReplaceRegExpを使う問題です。図の表は都道府県庁の住所から抜粋したものです。この住所から都道府県名だけを抜き出す検索パターンと置換文字列を考えてください。対象はこの表の住所のみです。他の方の思考時間のため回答は15:00以降。回答は引用ツイートで。 pic.twitter.com/eyscDE9vVC

2021-04-22 05:37:05
拡大
拡大
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

表の住所です。(1/2) 〒060-8588 北海道札幌市中央区北3条西6-1 〒320-8501 栃木県宇都宮市塙田1-1-20 〒163-8001 東京都新宿区西新宿2-8-1 〒231-8588 神奈川県横浜市中区日本大通1 〒602-8570 京都府京都市上京区下立売通新町西入薮ノ内町

2021-04-22 05:39:08
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

表の住所です。(2/2) 〒540-8570 大阪府大阪市中央区大手前2-1-22 〒812-8577 福岡県福岡市博多区東公園7-7 〒890-8577 鹿児島県鹿児島市鴨池新町10-1

2021-04-22 05:43:34
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

#正規表現クイズ (No.18) 解答 [〒\d-\s]*(.{2,3}[都道府県])?.* と $1 .*\s(.{2,3}[都道府県]).* と $1 ReplaceRegExpを使いますが置換するのではなく「部分抽出」する使い方になります。抽出したいところだけキャプチャして残りは読み捨てます。詳しくは図を見てください。次は明日(4/23)の朝です。 twitter.com/excelvba_diary… pic.twitter.com/manTd9Kxkr

2021-04-22 18:29:19
拡大
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

#正規表現クイズ 予告 明日の正規表現クイズは今日の問題(No.18)の発展形になります。住所を処理するのは結構面倒ですが、それを正規表現でサクッとやってしまおうというものです。さて正規表現クイズは今月末をもって一旦終了とします。 来週は、いよいよアレが出ます。

2021-04-22 18:57:05
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

#正規表現クイズ (No.19) 住所から都道府県名だけを抜き出す検索パターンと置換文字列を考えてください。ただし都道府県名が省略されている場合は空(Null文字)とします。下表の住所は都道府県庁所在地のサンプルです。他の方の思考時間のため回答は15:00以降。回答は引用ツイートで。 pic.twitter.com/cPxZjyFSxt

2021-04-23 05:47:23
拡大
拡大
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

#正規表現クイズ (No.19) 補足 都道府県庁の住所はJ-LISのHPに掲載されています。 j-lis.go.jp/spd/code-addre… こちらに掲載されている住所をサンプルとします。 twitter.com/excelvba_diary…

2021-04-23 05:51:05
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

#正規表現クイズ (No.19) 解答 (.{2,3}[都道府県])?.* と $1 (~)? は (~)に0回または1回の繰り返しに一致します。0回の場合であっても$1が使えることを理解しておきましょう。詳しくは図を見てください。次は4/26の朝です。 twitter.com/excelvba_diary… pic.twitter.com/BNv8Q4CbFV

2021-04-23 18:48:35
拡大
拡大
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

正規表現クイズを出していてつくづく思うのは、正規表現を扱った良書が少ないということ。VBAによる正規表現を体系的に書いた図書は皆無かもしれない。

2021-04-23 19:12:58
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

VBAで何かをしようとするとSQLや正規表現など他の言語の知識が必要になる。WebAPIもその一つ。そこからXMLやJSONに繋がっていく。VBAは無限の可能性を秘めていると豪語してきたが、それは多分に他の言語の恩恵。VBAに限らずプログラミング言語というのはそういうもの。今日も言語ネットワークを旅する.

2021-04-24 11:55:31
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

@hoehoe1234 私もそれで実装しています。簡易な具体的では、CSVファイルをTextStreamのReadAllで読んで、改行コードでSplitし、行(レコード)単位の配列に分割します。それゆえRFCで許されている改行コードは項(フィールド)には無いという前提です。素直なCSVならこれで十分です。

2021-04-24 22:06:24
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

#正規表現クイズ (No.20) 住所から都道府県名だけを抜き出す検索パターンと置換文字列を考えてください。ただし都道府県名が省略された住所の場合は空(Null文字)とします。住所は日本郵政のHPで検索可能なものに限ります。 他の方の思考時間のため回答は15:00以降。回答は引用ツイートで。 pic.twitter.com/oSsUIjDlyd

2021-04-26 06:02:03
拡大
拡大
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

#正規表現クイズ (No.20) 補足 No.19の発展問題になります。この問題の回答は画像でも構いません。この補足が大きなヒントになるかもしれません。 twitter.com/excelvba_diary…

2021-04-26 06:05:51
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

#正規表現クイズ (No.20) 解答 この問題は「例外処理」にするか「対象をすべて列挙」するかの判断を問いかけた問題でした。詳しくは図を見てください。次は明日(4/27)の朝です。あと4問でこのシリーズは一旦終了します。 twitter.com/excelvba_diary… pic.twitter.com/bZUlRxgOLL

2021-04-26 18:11:37
拡大
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

#正規表現クイズ 予告 明日と明後日の問題は箇条書きの書式を変換(統一)する問題です。これまで学んだパターンを使って綺麗に変換します。そして、最終問題はTLにも登場するアレです。

2021-04-26 21:40:17
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

#正規表現クイズ (No.21) ReplaceRegExp関数を使う問題。図のように箇条書きの書式 "(数字)" を "数字)" に変換(統一)する検索パターンと置換文字列を考えてください。すでに "数字)" の書式になっている場合はそのままとします。他の方の思考時間のため回答は15:00以降、引用ツイートでお願いします pic.twitter.com/rrvnMSRQTt

2021-04-27 05:45:34
拡大
拡大
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

#正規表現クイズ (No.21) 解答 \((\d+\)) と $1 \((?=\d+\)) と 空(Null) 回答者のいずれも模範解答でした😀 詳しくは図をみてください。この問題はとても応用が利きます。典型的な応用例としてNo.23で出題予定です。次(No.22)は明日(4/28)の朝です。 twitter.com/excelvba_diary… pic.twitter.com/mC6fJKyz8A

2021-04-27 17:24:44
拡大
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

#正規表現クイズ (No.22) ReplaceRegExp関数を使う問題。図のように箇条書きの書式 "数字)" を "(数字)" に変換(統一)する検索パターンと置換文字列を考えてください。すでに "(数字)" の書式になっている場合はそのままとします。 他の方の思考時間のため回答は15:00以降、引用ツイートでお願いします pic.twitter.com/Cv2XgsH77j

2021-04-28 05:50:52
拡大
拡大
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

#正規表現クイズ (No.22) 問題の補足 No.21の逆パターンです。図にも示している以下のサンプルテキストが変換できればOKとします。 9) A4またはB5の紙(1枚) 10) 2Bまたは3Bの鉛筆(1本) 11) (9)と10)を使って下絵(A)を書く 12) 11)の下絵(A)に色を塗る

2021-04-28 05:58:46
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

「正規表現クイズ (No.22)」は出題するか悩みましたが、No.21の逆パターンを出さずして正規表現を語れるかの勢いで出しました。正規表現にとって、適切な位置に「文字列を挿入」するのは面倒な場合が多いです。そこは条件と工夫しだいということで。Give it a try!

2021-04-28 07:00:32
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

#世紀表現クイズ 予告 最終となりますN0.23、No.24はCSVを処理する連問形式の出題となります。No.23は今日の夕方前、No.24は明日に出題予定です。

2021-04-28 12:11:18
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

#正規表現クイズ (No.23) ReplaceRegExp関数を使う問題。CSV(RFC4180)のレコードの区切り文字カンマ","を任意の文字に変換する検索パターンと置換文字列を考えてください。図の例では","を"\"に変えています。他の方の思考時間のため回答は明日の12:00以降、引用ツイートでお願いします。 pic.twitter.com/I0F3zSGuK9

2021-04-28 16:27:19
拡大
拡大
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

#正規表現クイズ (No.23) 問題補足 最初は9:00以降としていましたが12:00以降とします。以下、サンプルテキストです。 aaa,bbb,ccc,ddd "001","002","003","004" "1,234","4,567","8,901","2,345" """a""","""b""","""c""","""d""" "a""b","c""d","e""f","e""f" "","","","" ",",",",",","," ,,,end twitter.com/excelvba_diary…

2021-04-28 16:30:12
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

#正規表現クイズ (No.22) 解答 (^|[^(\d])(\d+\)) と $1($2 (^|[^(\d])(?=\d+\)) と $1( この問題は条件に一致した場合に文字列を挿入するという問題です。回答者の皆さんの答えも基本原理はどちらかに該当しています。詳細は図を見てください。さてNo.23は既に出題してあります。是非挑戦して下さい。 twitter.com/excelvba_diary…

2021-04-28 18:10:22
Excel VBA Diary (OneDrive問題に挑戦中) @excelvba_diary

CSVを例えばTSVに変換できれば、あとはTABを区切り文字としてSplit関数で配列に変換できる。つまりCSVは区切り文字をいかに正しく認識するかということに全集中する問いでもある。では、どうやってCSVをTSVに変換するか。それはこちらをご覧ください。 twitter.com/excelvba_diary…

2021-04-28 18:22:40
前へ 1 ・・ 3 4 次へ