スポンサーリンク

正規表現

JavaScriptの動かないコード(中級編)正規表現をwhile内で定義すると無限ループで固まるエラー (execでグローバルなマッチだと,処理がフリーズ)

連載目次へ 以下のJavaScriptコードが,意図した動作をしないのは,なぜですか。(制限時間1分) やりたい事: 複数の文字列がある。 それぞれの文字列から,URLのトップレベルドメイン(TLD)を全て抜き出す。 抽出のために,RegExp.exec() メソッドで,正…

JavaScriptの動かないコード(中級編) 正規表現の括弧キャプチャを,グローバルで繰り返しmatchできない (gオプションを付けると部分文字列の抽出が無効)

連載目次へ 以下のJavaScriptコードが,意図した動作をしないのは,なぜですか。(制限時間1分) やりたい事: (試行1)では,文字列からトップレベルドメインを1つだけ抽出する。 これは上手くいく。 (試行2)では,文字列からトップレベルドメインを…

形式言語とオートマトンの講義ノートPDF。コンパイラや状態機械による言語処理の理論

講義ノートの目次へ 情報科学で,形式言語とオートマトンの講義ノートPDF。 コンパイラやチューリングマシンによる,機械的な言語処理を実現するための理論だ。「正規言語」や「正規文法」といったモデル化を行なう。 ここで形式言語の処理を学ぶ前に,チュ…

あなたが正規表現の中級者か判別する10問テスト (文字列処理の必須知識)

スキルチェックの目次へ あなたが,正規表現を扱うプログラマーとして,中級以上の実力を持っているかどうか判定します。 下記に,正規表現に関する10問の質問があります。いずれも,「文字列を処理する実用的なプログラム」を書く上で必要な知識です。 こ…

Excelで,表データを「要約」した円グラフを作成する方法 …SUMIF関数のワイルドカードにINDIRECT(ADDRESS(ROW()))して,情報をまとめる

下記は,2013年になってから今(9月)までの,本ブログ訪問者の利用ブラウザ。 集計データをブラウザの種類ごとに要約して,円グラフにしてある。 この元データは,下記のように,ブラウザのバージョン情報まで含まれている。これだと,情報が細かすぎるので,…

Word文書を解析して,英単語の出現回数を統計出力するバッチ (英文の用語索引を自動生成)

バッチのまとめTOPへ 文書の「単語索引」を,自動的に生成するプログラム。 Word文書の文章中に出現する,全ての英単語を抽出する。 各英単語の出現回数をカウントし,ランキングを作成する。 また,各単語の出現するページ番号などを一覧表で出力する。 処…

あなたが理解できない,たった一行のRubyのコード (動的言語に対する静的解析の限界)

あなたは,下記のコードを理解できない。 p f /g+h/i これはRubyのコードである。「p」は,コンソールに出力する関数である。 問: だいたい,何をやっているコードですか? ※例えば,四則演算など。 構文をおおまかに説明して下さい。 どれが変数で,どれが…

JavaScriptの動かないコード (初級編) switch文で,数値以外の変数を評価した時のエラー

連載目次へ 以下のJavaScriptコードが意図した動作をしないのは,なぜですか。(制限時間1分) やりたい事: 氏名を選択して,ボタンを押す。 ⇒氏名に対応する苗字と,苗字に対応するメッセージが表示される。 <body> 氏名を選んでください。 <select id="hoge"> <option>鈴木</option> <option>鈴木 太郎</option> <option>鈴</option></select></body>…

JavaScriptの動かないコード (中級編) オブジェクトのプロパティ定義にthisを使って失敗するエラー

連載目次へ 以下のJavaScriptコードが意図した動作をしないのは,なぜですか。(制限時間1分) やりたい事: 文字列が改行やスペースを含むかどうか,正規表現で調べる。 <input type="button" value="クリックして表示" onClick="f()"> <script language="JavaScript"> // 文字列が特殊文字を含むかどうか判定するためのオブジェクト。 var obj = { /* …

JavaScriptの動かないコード (中級編) 正規表現で同じ文字の連続を検出したい - 置換前パターン中での後方参照

連載目次へ 以下のJavaScriptコードが意図した動作をしないのは,なぜですか。(制限時間1分) やりたい事: 同じアルファベットの連続した並びを,それぞれ1文字にまとめる。 例: "good apple" → "god aple" <script language="JavaScript"> function matomeru( str ) { // 正規表現を…

JavaScriptの動かないコード (中級編) splitで文字列を分割する時のエラー

連載目次へ 以下のJavaScriptコードが意図した動作をしないのは,なぜですか。(制限時間1分) やりたい事: 言葉の間に句読点の無い文章中に「。」をつけたい。 お早う今日は今晩は今日はお早う。 → お早う。今日は。今晩は。今日は。お早う。 <script language="JavaScript"> // split()</script>…